炼焦煤价格,胆怯天尊,sausages是什么意思
关于杨辉三角是什么东西,右转维基百科:杨辉三角
稍微看一下直观一点的图:
杨辉三角有以下几个特点:
每一项的值等于他左上角的数和右上角的数的和,如果左上角或者右上角没有数字,就按0计算。
第n层项数总比n-1层多1个
计算第n层的杨辉三角,必须知道n-1层的数字,然后将相邻2项的数字相加,就能得到下一层除了最边上2个1的所有数字。 听起来有点像递归的思想,我们不妨假设我们已经知道n-1层的数字,来计算一下n层的数字吧。
稍微完善一下代码:
if __name__ == "__main__":
for line in yanghui_trangle1(5):
print line
tips: 上面的程序并没有考虑数据格式化的问题,也就是说输出不是完美的三角形。
鉴于最近在学习erlang,补上一个erlang版本的,性能上没有测试过,不过还是要惊叹于函数式语言的表达能力:
triangle_next(p) ->
lists:zipwith(fun(x, y) -> x+y end, [0|p], p ++ [0]).
triangle(1) ->
[[1]];
triangle(n) ->
l = triangle(n - 1),
[h|_] = l,
[triangle_next(h)|l].
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Python爬虫:Request Payload和Form Data的简单区别说明
浅谈Python中threading join和setDaemon用法及区别说明
Python3-异步进程回调函数(callback())介绍
python继承threading.Thread实现有返回值的子类实例
Python中使用threading.Event协调线程的运行详解
网友评论