一.順序查找---O(n)
無序列表查找
def sequentialSearch(alist,item):
pos = 0
順序查找的遞歸實現、found = False
while pos < len(alist) and not found:
if alist[pos] == item:
found = True
else:
Python遞歸。pos = pos + 1
return found
list = [2,3,1,4,5,6,0]
print(sequentialSearch(list,5))
print(sequentialSearch(list,7))
java遞歸算法經典實例、有序列表查找
def ordersequentialSearch(alist,item):
pos = 0
found = False
stop = False
c語言遞歸。while pos < len(alist) and not found and not stop:
if alist[pos] == item:
found = True
else:
if alist[pos] > item:
遞歸、stop = True
else:
pos = pos + 1
return found
list = [1,2,3,4,5,6,7]
漢諾塔問題遞歸算法python。print(ordersequentialSearch(list,3))
print(ordersequentialSearch(list,9))
二.二分查找---O(log^n)
def binarySearch(alist,item):
first = 0
python遞歸求和。last = len(list) - 1
found = False
while first <= last and not found:
midpoint = (first + last) // 2
if alist[midpoint] == item:
遞歸算法經典實例。found = True
else:
if item < alist[midpoint]:
last = midpoint - 1
else:
python遞歸算法?first = midpoint + 1
return found
list = [0,1,2,3,4,5,6,7,8]
print(binarySearch(list,3))
print(binarySearch(list,10))
python遞歸程序的特點?遞歸實現二分查找
def binarySearchCur(alist,item):
if len(alist) == 0:
return False
else:
python 遞歸函數例子。midpoint = len(alist) // 2
if alist[midpoint] == item:
return True
else:
if item < alist[midpoint]:
遞歸算法1加到100、return binarySearchCur(alist[:midpoint],item)
else:
print(alist[midpoint+1:])
return binarySearchCur(alist[midpoint+1:],item)
def sequentialSearch(alist,item):pos = 0found = False
c語言遞歸算法經典實例。while pos < len(alist) and not found:if alist[pos] == item:found = Trueelse:pos = pos + 1return foundlist = [2,3,1,4,5,6,0]print(sequentialSearch(list,5))print(sequentialSearch(list,7))
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态