首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > Ruby Rails >

ruby 兑现杨辉三角

2013-01-28 
ruby 实现杨辉三角递归思想?每一行我看做是一个数组,传入的参数是上一个数组,当然每一个结果数组用temp缓

ruby 实现杨辉三角

递归思想?
每一行我看做是一个数组,传入的参数是上一个数组,当然每一个结果数组用temp缓存一下,?
每传入一个数组,那么打印一次,也就是每行的结果了

代码]?[Ruby]代码01class?Sanjiao02????????????????def?initialize(row)03????????????????????????@row?= row04????????????????end05????????????????def?sanjiaoxing(temp)06????????????????number = temp.length07???????????????temp.each?do?|x|08????????????????????????????????????print x.to_s+' '09?????????????????????????????end10????????????array =?Array.new(number.to_i+1)11?????????????????????????????0.upto(number.to_i)?do?|x|12?????????????????????if?x ==?0?????????????????#? 两端的就不用求了,13?????????????????????????????????????????????????????????array[0] =114???????????????????????????????????????elsif??x == number.to_i15?????????????????????????????array[number.to_i] =?116?????????????????????else17?????????????????????????????????????????????array[x]=temp[x-1].to_i+temp[x].to_i???#根据上一个数组的结果得下一数组的值18???????????????????????????????????end19?????????????????????????????end20????????????????????????????????temp = array???#hauncunyixia21?????????????????????????????puts?" "22???????????????if?number.to_i <?@row23?????????????????????????????????sanjiaoxing(temp)24???????????????end25????????????????end26end27?28temp =?Array.new(1)29temp[0] =130p = Sanjiao.new(20)31p.sanjiaoxing(temp)

热点排行