Python 尋找區域性最高點

2021-08-19 17:58:16 字數 884 閱讀 4493

# 尋找區域性最高點

# 輸入input: 含有最高點高度的列表

# 輸出output: 返回最高點的位置

# 時間複雜度: o(log(n))

deffindhighspot

(input):

ilen =

len(

input

) mid = ilen//2-

1# python中'/'為小數除法,'//'為地板除

ifinput

[mid-1]

<=

input

[mid]

>=

input

[mid+1]

:return

str(mid+1)

# 預設返回最高點到第乙個點之間的距離

elif

input

[mid-1]

>

input

[mid]

:return findhighspot(

input

[:mid//2]

)else

:return

'mid+'

+findhighspot(

input

[mid//2:

])# 返回最高點距離中間點的距離

if __name__ ==

'__main__'

:input=[

1,2,

6,5,

3,7,

4]output = findhighspot(

input

)print

('output:'

, output)

# output: 3

Python 尋找區域性最高點的實現

我就廢話不多說了,直接上 吧!尋找區域性最高點 輸入input 含有最高點高度的列表 輸出output 返回最高點的位置 時間複雜fsfktzora度 o log n findhighspot input ilen len input mid ilen 2 1 python中 為小數除法,為地板除 ...

尋找區域性最高點 1D

如題,在1維陣列中,如果乙個數大於或等於左右兩邊相鄰的數,則稱區域性最高點 1d。其中邊界外值為 infty 即最左邊和最右邊只需大於臨近的乙個元素。一種方法是從第乙個元素逐個開始遍歷。演算法複雜度為 t o n t o n t o n 另一種演算法使用二分法。對於乙個點,有以下情況 如下 auth...

尋找區域性最小

定義區域性最小的概念。arr長度為1時,arr 0 是區域性最小。arr的長度為n n 1 時,如果arr 0 區域性最小的概念和極小值是一樣的,先判斷邊界,如果arr 0 的值比arr 1 小,arr n 1 的值比arr n 2 小,則arr 0 和arr n 1 也是區域性最小。如果上面兩種都...