1. 程式人生 > 其它 >斐波那契|氣泡排序|二分查詢

斐波那契|氣泡排序|二分查詢

斐波那契
數列,又稱黃金分割數列、因數學家列昂納多·斐波那契以兔子繁殖為例子而引入,故又稱為“兔子數列”,
指的是這樣一個數列:1、1、2、3、5、8、13、21、34、……在數學上,斐波納契數列以遞迴的方法定義。

lis = []
for i in range(8):
    if i == 0 or i == 1:  # 第1,2項 都為1
        lis.append(1)
    else:
        lis.append(lis[i - 2] + lis[i - 1])  # 從第3項開始每項值為前兩項值之和
print(lis)

氣泡排序

  for i in range(len(li)-1):
         for j in range(len(li)-i-1):
            if li[j] > li[j+1]:
                 li[j],li[j+1] = li[j+1],li[j]
 li = [3,6,4,8,5,3]
 buttle_sort(li)
 print(li)

二分查詢
def func(alist, item):
low = 0
high = len(alist)-1
n = 0
while low <= high:
mid = int((low + high)/2)
n += 1
if alist[mid]==item:
return mid
if alist[mid]<item:
low = mid + 1
else:
high = (mid-1)
return None
m=[1,2,3,4,8,9,11,12,14,18,19,20,28]
print(func(m,14))