Python 尋找局部最高點(diǎn)的實(shí)現(xiàn)
更新時(shí)間:2019年12月05日 10:44:13 作者:randomparty
今天小編就為大家分享一篇Python 尋找局部最高點(diǎn)的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
我就廢話不多說了,直接上代碼吧!
# 尋找局部最高點(diǎn)
# 輸入input: 含有最高點(diǎn)高度的列表
# 輸出output: 返回最高點(diǎn)的位置
# 時(shí)間復(fù)雜度: O(log(n))
def findHighSpot(input):
iLen = len(input)
mid = iLen//2 - 1 # Python中'/'為小數(shù)除法,'//'為地板除
if input[mid-1] <= input[mid] >= input[mid+1]:
return str(mid+1) # 默認(rèn)返回最高點(diǎn)到第一個(gè)點(diǎn)之間的距離
elif input[mid-1] > input[mid]:
return findHighSpot(input[:mid//2])
else:
return 'mid+'+findHighSpot(input[mid//2:]) # 返回最高點(diǎn)距離中間點(diǎn)的距離
if __name__ == '__main__':
input = [1, 2, 6, 5, 3, 7, 4]
output = findHighSpot(input)
print('output:', output) # output: 3
以上這篇Python 尋找局部最高點(diǎn)的實(shí)現(xiàn)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:
相關(guān)文章
Python實(shí)現(xiàn)FTP上傳文件或文件夾實(shí)例(遞歸)
本篇文章主要介紹了Python實(shí)現(xiàn)FTP上傳文件或文件夾實(shí)例(遞歸),具有一定的參考價(jià)值,有興趣的可以了解一下。2017-01-01
Python編程判斷一個(gè)正整數(shù)是否為素?cái)?shù)的方法
這篇文章主要介紹了Python編程判斷一個(gè)正整數(shù)是否為素?cái)?shù)的方法,涉及Python數(shù)學(xué)運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2017-04-04
python?list與numpy數(shù)組效率對(duì)比
這篇文章主要介紹了python?list與numpy數(shù)組效率對(duì)比分析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02
Python數(shù)據(jù)分析基礎(chǔ)之異常值檢測(cè)和處理方式
這篇文章主要介紹了Python數(shù)據(jù)分析基礎(chǔ)之異常值檢測(cè)和處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07
VSCode配合pipenv搞定虛擬環(huán)境的實(shí)現(xiàn)方法
這篇文章主要介紹了VSCode配合pipenv搞定虛擬環(huán)境的實(shí)現(xiàn)方法,文中通過圖文教程介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05

