#41 楼 @puake 顺带给你推荐个卖网站模板的网站:http://themeforest.net/
上面的模板几乎都有在线 demo,卖得也便宜。可以试试看有没合适的。
这有啥好争论的。
切西瓜自然用西瓜刀要比三寸水果刀效率来得高,但西瓜刀的成本却是三寸水果刀的好几倍。 反过来,你用西瓜刀去削苹果皮试试,绝对坑爹。
引用一句土话:到什么山,唱什么歌。 或许几十年之后,你坐着老板椅,喝着咖啡,看着公司报表。再来回顾几十年前的自己身为码畜时,为了几门语言和小伙伴们吵得不可开交,那是多么的可笑。
@datty258 @luikore 想到有另外一种方法,不过还是@luikore 的方法最优,性能差距好几倍。
arr1 = (1 .. 18).collect { |i| ["B#{i}", "#{i}F"] }.flatten.shuffle
法一:arr2 = arr1.sort_by { |f| f.start_with?('B') ? -f[1..-1].to_i : f.to_i }
法二:arr3 = arr1.sort_by { |f| f.sub(/B/i, '-').to_i }
如果不考虑字母 'B' 的大小写问题,可以把sub后面的 'i' 去掉。性能又可以提升不少。
法三:arr4 = arr1.sort_by { |f| f.sub(/B/, '-').to_i }
=> ["B18", "B17", "B16", "B15", "B14", "B13", "B12", "B11", "B10", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "B2", "B1", "1F", "2F", "3F", "4F", "5F", "6F", "7F", "8F", "9F", "10F", "11F", "12F", "13F", "14F", "15F", "16F", "17F", "18F"]
arr2 == arr3
=> true
arr3 == arr4
=> true
性能对比:
irb(main):336:0> i = Time.now; 1000.times { arr1.sort_by { |f| f.start_with?('B') ? -f[1..-1].to_i : f.to_i } }; Time.now - i
=> 0.04322
irb(main):337:0> i = Time.now; 1000.times { arr1.sort_by { |f| f.sub(/B/i, '-').to_i } }; Time.now - i
=> 0.171414
irb(main):338:0> i = Time.now; 1000.times { arr1.sort_by { |f| f.sub(/B/, '-').to_i } }; Time.now - i
=> 0.131904
^_^,你还没招到啊。。进成都 这个标签一个个筛选嘛。呵呵。
稍稍重写了一下你的代码,没试过,不知道可行性如何,有没有错误
require 'socket'
def open_port(host, port) #test whether if the port is open
sock = Socket.new(:INET, :STREAM)
begin
raw = Socket.sockaddr_in(port, host)
puts "#{port} open." if sock.connect(raw)
rescue
Errno::ECONNREFUSED
end
end #end of the function
def main(host, start_port, end_port)
start_port = 1
another_port = end_port / 2
the_ending_port = case
when start_port < another_port then another_port
when start_port > another_port then end_port
end
Thread.new { start_port.upto(the_ending_port) { |port| open_port(host, port) } }.join
end
还是不能太适应 rescue 单独使用,所以强制加上了 begin,
另外,start_port == end_port / 2,你怎么办?我看你 if 里面没有涉及到。
所以 the_ending_port 我只能用 case when 了,就没用三目运算 the_ending_port = (start_port < another_port) ? another_port : end_port
@DrinE 仔细看下你 main 里面
open_port(host, port)
你这个 port 有传参数进去么?
@birbird 你 ssh 进去的,我应不应该怀疑你 ssh 断掉的同时,你的 rails server 就 down 了呢。
先加个参数试下:rails server -d
让 rails server 在后台跑
啊啊啊啊啊啊啊啊 +1,帮顶
为啥在列表里面老是看不到这个帖子呢?
求解。呵呵。
@luffycn 我的是 200 多一点的。原价 400+ 的。虽然不怎么信这些原价多少钱多少钱之类的。不过确实感觉比同等价位的 200+ 要舒服得多。看起来像皮的,但是不是就没深究了,只要坐起来舒服就行。
你写个一行代码,实现他几百行的功能,他估计就受不了你的诱惑了
@kgen +1 很多中小型企业,管理流程不太固定,随意性比较高。在流程梳理,需求调研的时候发现,唉哎,妈呀,这个用程序实现起来太坑爹了。然后项目就不了了之了。
日薪 1K,月 20K,对一个初创项目来讲,我和我的小伙伴们都惊呆了。特别是在成都这个地方。
呵呵。。撸主是复姓欧阳么?