中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

python二分法查找法怎么使用

小億
93
2023-08-02 09:54:26
欄目: 編程語言

二分法是一種用于查找有序數組中特定元素的算法。它的基本思想是,將有序數組分成兩個部分,然后判斷目標元素在哪個部分,再在相應的部分中繼續二分查找,直到找到目標元素或者確定目標元素不存在。

下面是一個使用二分法查找特定元素的示例代碼:

def binary_search(arr, target):
left = 0
right = len(arr) - 1
while left <= right:
mid = (left + right) // 2
if arr[mid] == target:
return mid
elif arr[mid] < target:
left = mid + 1
else:
right = mid - 1
return -1
# 示例使用
arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]
target = 6
result = binary_search(arr, target)
if result != -1:
print("目標元素在數組中的索引為", result)
else:
print("目標元素不存在于數組中")

在上面的代碼中,binary_search 函數接受一個有序數組 arr 和目標元素 target 作為參數。然后使用 leftright 兩個指針分別指向數組的左右邊界。在每次循環中,計算出中間元素的索引 mid,并將其與目標元素進行比較。如果中間元素等于目標元素,就返回中間元素的索引;如果中間元素小于目標元素,說明目標元素可能在右半部分,將 left 指針移到 mid 的右邊一位;如果中間元素大于目標元素,說明目標元素可能在左半部分,將 right 指針移到 mid 的左邊一位。重復以上步驟直到找到目標元素或者確定目標元素不存在。

通過以上代碼,可以在有序數組中使用二分法查找特定元素。

0
富裕县| 河西区| 阳东县| 茌平县| 黔西| 万盛区| 于都县| 大同县| 宿州市| 大洼县| 庄河市| 英山县| 韩城市| 鄂温| 云浮市| 阿拉善右旗| 沭阳县| 内丘县| 汤阴县| 克拉玛依市| 兴业县| 潞城市| 巴塘县| 玉树县| 乌苏市| 普陀区| 合作市| 安顺市| 德昌县| 屏山县| 普格县| 宜昌市| 和龙市| 屏东市| 城市| 犍为县| 根河市| 松阳县| 如皋市| 昆山市| 松桃|