国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python二分查找算法的遞歸實現方法

2020-01-04 17:28:32
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了python二分查找算法的遞歸實現方法,結合實例形式分析了Python二分查找算法的相關實現技巧,需要的朋友可以參考下
 

本文實例講述了python二分查找算法的遞歸實現方法。分享給大家供大家參考,具體如下:

這里先提供一段二分查找的代碼:

def binarySearch(alist, item):  first = 0  last =len(alist)-1  found = False  while first<=lastand not found:midpoint = (first + last)//2if alist[midpoint] == item:   found = Trueelse:   if item < alist[midpoint]:  last = midpoint-1   else:  first = midpoint+1  return foundtestlist = [0, 1, 2, 8, 13, 17, 19, 32, 42,]print(binarySearch(testlist, 3))print(binarySearch(testlist, 13))

近來喜歡遞歸的簡單明了,所以修改成遞歸的方法:

def binSearch(lst, item):  mid = len(lst) //2  found = False  if lst[mid] ==item: found = True return found  if mid == 0:#mid等于0就是找到最后一個元素了。 found = False return found  else: if item > lst[mid]: #找后半部分   #print(lst[mid:])   returnbinSearch(lst[mid:], item) else:   returnbinSearch(lst[:mid], item) #找前半部分

測試通過。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 垣曲县| 抚顺县| 新安县| 河西区| 甘泉县| 兰溪市| 凤冈县| 土默特右旗| 砀山县| 青川县| 永年县| 拜泉县| 吉隆县| 安徽省| 高州市| 海宁市| 永善县| 沙河市| 华阴市| 大方县| 张家界市| 郑州市| 团风县| 荥阳市| 榕江县| 桂阳县| 琼结县| 廊坊市| 巴林右旗| 连州市| 双牌县| 铜陵市| 安岳县| 荥经县| 化德县| 合江县| 巴彦淖尔市| 泾阳县| 天祝| 交口县| 上杭县|