vb " />

扫描二维码下载沐宇APP

沐宇

微信扫码使用沐宇小程序

沐宇

vb浜屽垎娉曟煡鎵炬暟缁勫厓绱犳€庝箞瀹炵幇

扬州沐宇科技
2023-11-28 13:59:05
vb

鍦╒B璇█涓紝鍙互浣跨敤浠ヤ笅浠g爜鏉ュ疄鐜颁簩鍒嗘硶鏌ユ壘鏁扮粍鍏冪礌锛?/p>

Function BinarySearch(arr() As Integer, target As Integer) As Integer
    Dim left As Integer
    Dim right As Integer
    Dim mid As Integer
    
    left = 0
    right = UBound(arr)
    
    While left <= right
        mid = (left + right) \ 2
        
        If arr(mid) = target Then
            Return mid
        ElseIf arr(mid) < target Then
            left = mid + 1
        Else
            right = mid - 1
        End If
    End While
    
    Return -1 ' 濡傛灉鏈壘鍒扮洰鏍囧厓绱狅紝鍒欒繑鍥?1
End Function

鍦ㄤ互涓婁唬鐮佷腑锛?code>arr鏄緟鏌ユ壘鐨勬暟缁勶紝target鏄鏌ユ壘鐨勭洰鏍囧厓绱犮€?code>left鍜?code>right鍒嗗埆琛ㄧず褰撳墠鏌ユ壘鑼冨洿鐨勫乏杈圭晫鍜屽彸杈圭晫锛?code>mid琛ㄧず褰撳墠鏌ユ壘鑼冨洿鐨勪腑闂翠綅缃€傞€氳繃涓嶆柇璋冩暣left鍜?code>right鐨勫€硷紝骞跺皢target涓?code>arr(mid)杩涜姣旇緝锛屾渶缁堝彲浠ユ壘鍒扮洰鏍囧厓绱犵殑浣嶇疆銆傚鏋滄壘鍒扮洰鏍囧厓绱狅紝鍒欒繑鍥炲叾鍦ㄦ暟缁勪腑鐨勭储寮曪紱濡傛灉鏈壘鍒扮洰鏍囧厓绱狅紝鍒欒繑鍥?1銆?/p>

扫码添加客服微信