读书人

自己实现了一个Ruby的组合算法写到一

发布时间: 2012-03-06 20:47:55 作者: rapoo

自己实现了一个Ruby的组合算法,写到一半,发现Ruby的Array类支持。

Perl code
class Array    def make_array        arr = []        self.each{|i| arr.insert -1, [i]}        arr    end    def make_array2(e)        self.each{|i| i.insert -1, e}    endenddef combine(array, size)    return [ array ] if array.size == size    return array.make_array if size == 1    last = array[-1]    left = array - [ last ]    a = combine(left, size - 1).make_array2(last)    b = combine(left, size)    return a + bendp combine(%w{ a b c d e}, 4)p combine(%w{ a b c d e}, 3)p combine(%w{ a b c d e}, 2)p combine(%w{ a b c d e}, 1)


不过还是希望高手提提意见,关于效率,关于风格什么的。任何建议都OK。
我自己给我的建议是,多看文档,少走弯路~。

[解决办法]
过来看看,向八神学习,呵呵!
[解决办法]
不懂ruby的飘过

读书人网 >Ruby Rails

热点推荐