def
func3
(x):
if x>0:
print
(x) func3(x-1)
deffunc4
(x):
if x >0:
func4(x -1)
print
(x)#輸出結果:43
21====
====
====
====
*****1
234
max=0
defhanoi
(n,a,b,c)
:#統計移動的次數
global
maxif n>0:
max=
max+
1 hanoi(n-
1,a,c,b)
print
("moving from %s to %s"
%(a,c)
) hanoi(n-
1,b,a,c)
hanoi(4,
'a',
'b',
'c')
print
("一共移動了%s次"
%max
)
'''
時間複雜度是o(n)
'''def
liner_search
(li,val)
:#enumerate()用於可迭代\可遍歷的資料物件組合為乙個索引序列,同時列出資料和資料下標.
for ind,v in
enumerate
(li)
:if v==val:
return ind
else
:return
none
其中列表li必須為有序
'''
時間複雜度為o(logn)
'''def
binary_search
(li,val)
: left=
0 right=
len(li)-1
while left<=right:
#候選區有值
mid=
(left+right)//2
if li[mid]
==val:
return mid+
1elif li[mid]
>val:
right=mid-
1else
: left=mid+
1else
:return
none
li=[1,
2,3,
4,5,
6,7,
8,9]
print
(binary_search(li,1)
)
資料結構 樹的學習 (1)
樹的概念 樹是n n 0 個結點的有限集,n 0 是稱為空樹,在任意一顆非空樹中 1 有且僅有乙個特定的稱為根的結點,2 當n 1時,其餘節點可分為m個互不相交的有限集,每個集合本身又是一棵樹,並且稱為根的子樹。結點分類 結點擁有的子樹數稱為結點的度。度為0的結點稱為葉結點或終端結點,度不為0的結點...
資料結構學習 1
傳統中,資料結構一般分為 邏輯結構 和 物理結構 邏輯結構 是指資料物件中資料元素的相互關係 物理結構 是指資料的邏輯結構在計算機中的儲存形式 集合結構 集合機構中的資料元素除了同屬於乙個集合外,並沒有別的關係 線性結構 線性結構中的資料元素之間是屬於一對一的關係 樹形結構 樹形結構中的資料元素存在...
資料結構學習筆記 1 資料結構緒論
1.1 資料結構起源 現實中,我們利用計算機更多的不是解決數值計算的問題,而是需要一些更科學有效的手段 比如表 樹和圖等資料結構 的幫助,才能更好地處理問題。資料結構是一門研究非數值計算的程式設計問題中的操作物件,以及它們之間的關係和操作等相關問題的學科。1.2 基本概念和術語 資料元素 是組成資料...