python筆記2:楊輝三角學習筆記

楊輝三角,是二項式係數在三角形中的一種幾何排列,在中國南宋數學家楊輝1261年所著的《詳解九章算法》一書中出現。在歐洲,帕斯卡(1623----1662)在1654年發現這一規律,所以這個表又叫做帕斯卡三角形。帕斯卡的發現比楊輝要遲393年,比賈憲遲600年。
楊輝三角是中國數學史上的一個偉大成就。
python筆記2:楊輝三角學習筆記
概述

  1. 每個數等於它上方兩數之和。
  2. 每行數字左右對稱,由1開始逐漸變大。
  3. 第n行的數字有n項。
  4. 第n行的m個數可表示爲 C(n-1,m-1),即爲從n-1個不同元素中取m-1個元素的組合數。
  5. 第n行的第m個數和第n-m+1個數相等 ,爲組合數性質之一。
  6. 每個數字等於上一行的左右兩個數字之和。可用此性質寫出整個楊輝三角。即第n+1行的第i個數等於第n行的第i-1個數和第i個數之和,這也是組合數的性質之一。即 C(n+1,i)=C(n,i)+C(n,i-1)。
  7. (a+b)n的展開式中的各項係數依次對應楊輝三角的第(n+1)行中的每一項。
  8. 將第2n+1行第1個數,跟第2n+2行第3個數、第2n+3行第5個數……連成一線,這些數的和是第4n+1個斐波那契數;將第2n行第2個數(n>1),跟第2n-1行第4個數、第2n-2行第6個數……這些數之和是第4n-2個斐波那契數。
  9. 將第n行的各數值,分別乘以10的列數m-1次方,然後把這些數值相加的和等於11的n-1次方。例子:第11行數分別爲1,10,45,120,210,252,210,120,45,10,1,則11^10 = 110^0+1010^1+4510^2+...+110^10 =25937424601
    以上摘自:百度百科。
    方法1、
    n = int(input('請輸入楊輝三角打印的行數:'))
    triangle = [[1],[1,1]]
    for i in range(2,n):
    pre = triangle[i-1]
    cur = [1]
    for j in range(0,i-1):
    cur.append(pre[j]+pre[j+1])
    cur.append(1)
    triangle.append(cur)
    for k in range(n):
    pir = triangle[k]
    print(pir)
    方法2
    n = int(input('請輸入楊輝三角打印的行數:'))
    triangle = []
    for i in range(n):
    row = [1]
    triangle.append(row)
    if i ==0:
    continue
    for j in range(i-1):
    row.append(triangle[i-1][j]+triangle[i-1][j+1])
    row.append(1)
    for k in range(n):
    pir = triangle[k]
    print(pir)
    方法3:
    n = int(input('請輸入楊輝三角打印的行數:'))
    oldline = []
    newline = [1]
    length = 0
    print(newline)
    for i in range(1,n):
    oldline = newline.copy()
    oldline.append(0) #尾部加0,相當於2端加0
    newline.clear()
    offset = 0
    while offset <= i:
    newline.append(oldline[offset-1]+oldline[offset])
    offset +=1
    print(newline)
    方法4:
    n = int(input('請輸入楊輝三角打印的行數:'))
    oldline = []
    newline = [1]
    length = 0
    print(newline)
    for i in range(1,n):
    oldline = newline.copy()
    oldline.append(0) #尾部加0,相當於2端加0
    newline.clear()
    for j in range(i+1):
    newline.append(oldline[j-1]+oldline[j])
    print(newline)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章