扫描二维码下载沐宇APP

沐宇

微信扫码使用沐宇小程序

沐宇

python浜屽垎娉曟煡鎵炬硶鎬庝箞浣跨敤

扬州沐宇科技
2023-08-02 09:54:26
python

浜屽垎娉曟槸涓€绉嶇敤浜庢煡鎵炬湁搴忔暟缁勪腑鐗瑰畾鍏冪礌鐨勭畻娉曘€傚畠鐨勫熀鏈€濇兂鏄紝灏嗘湁搴忔暟缁勫垎鎴愪袱涓儴鍒嗭紝鐒跺悗鍒ゆ柇鐩爣鍏冪礌鍦ㄥ摢涓儴鍒嗭紝鍐嶅湪鐩稿簲鐨勯儴鍒嗕腑缁х画浜屽垎鏌ユ壘锛岀洿鍒版壘鍒扮洰鏍囧厓绱犳垨鑰呯‘瀹氱洰鏍囧厓绱犱笉瀛樺湪銆?/p>

涓嬮潰鏄竴涓娇鐢ㄤ簩鍒嗘硶鏌ユ壘鐗瑰畾鍏冪礌鐨勭ず渚嬩唬鐮侊細

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("鐩爣鍏冪礌涓嶅瓨鍦ㄤ簬鏁扮粍涓?quot;)

鍦ㄤ笂闈㈢殑浠g爜涓紝binary_search 鍑芥暟鎺ュ彈涓€涓湁搴忔暟缁?arr 鍜岀洰鏍囧厓绱?target 浣滀负鍙傛暟銆傜劧鍚庝娇鐢?left 鍜?right 涓や釜鎸囬拡鍒嗗埆鎸囧悜鏁扮粍鐨勫乏鍙宠竟鐣屻€傚湪姣忔寰幆涓紝璁$畻鍑轰腑闂村厓绱犵殑绱㈠紩 mid锛屽苟灏嗗叾涓庣洰鏍囧厓绱犺繘琛屾瘮杈冦€傚鏋滀腑闂村厓绱犵瓑浜庣洰鏍囧厓绱狅紝灏辫繑鍥炰腑闂村厓绱犵殑绱㈠紩锛涘鏋滀腑闂村厓绱犲皬浜庣洰鏍囧厓绱狅紝璇存槑鐩爣鍏冪礌鍙兘鍦ㄥ彸鍗婇儴鍒嗭紝灏?left 鎸囬拡绉诲埌 mid 鐨勫彸杈逛竴浣嶏紱濡傛灉涓棿鍏冪礌澶т簬鐩爣鍏冪礌锛岃鏄庣洰鏍囧厓绱犲彲鑳藉湪宸﹀崐閮ㄥ垎锛屽皢 right 鎸囬拡绉诲埌 mid 鐨勫乏杈逛竴浣嶃€傞噸澶嶄互涓婃楠ょ洿鍒版壘鍒扮洰鏍囧厓绱犳垨鑰呯‘瀹氱洰鏍囧厓绱犱笉瀛樺湪銆?/p>

閫氳繃浠ヤ笂浠g爜锛屽彲浠ュ湪鏈夊簭鏁扮粍涓娇鐢ㄤ簩鍒嗘硶鏌ユ壘鐗瑰畾鍏冪礌銆?/p>

扫码添加客服微信