专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Ruby/Rails

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

发布时间:2011-06-29 18:43:58 文章来源:www.iduyao.cn 采编人员:星星草
自己实现了一个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}
    end
end

def 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 + b
end

p 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的飘过
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: