Python之杨辉三角算法实现

学习了廖雪峰的官方网站的python一些基础,里面有个题目,就是让写出杨辉三角的实现,然后我就花了时间实现了一把。思路也很简单,就是收尾插入0,然后逐层按照杨辉三角的算法去求和实现杨辉三角。

附属代码:

 1 # -*- coding: utf-8 -*-
 2 
 3 # 期待输出:
 4 # [1]
 5 # [1, 1]
 6 # [1, 2, 1]
 7 # [1, 3, 3, 1]
 8 # [1, 4, 6, 4, 1]
 9 # [1, 5, 10, 10, 5, 1]
10 # [1, 6, 15, 20, 15, 6, 1]
11 # [1, 7, 21, 35, 35, 21, 7, 1]
12 # [1, 8, 28, 56, 70, 56, 28, 8, 1]
13 # [1, 9, 36, 84, 126, 126, 84, 36, 9, 1]
14 
15 def triangles():
16 
17     L = [1]
18     yield L
19     while True:
20         # print 'L是:',L
21         
22         # 在L这个List头尾插入0
23         L.insert(0,0)
24         L.insert(len(L),0)
25 
26         n = 0
27         # print 'n:%d--L的长度%d'%(n,len(L))
28         T = []
29         while n < len(L)-1:
30             T.append(L[n]+L[n+1])
31             n = n+1
32 
33         L = T
34         yield L
35 
36 n = 0
37 for t in triangles():
38     print(t)
39     n = n + 1
40     if n == 10:
41         break

 

posted @ 2015-12-09 10:53  何杨  阅读(641)  评论(0编辑  收藏  举报