在VB語言中,可以使用以下代碼來實現二分法查找數組元素:
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
在以上代碼中,arr
是待查找的數組,target
是要查找的目標元素。left
和right
分別表示當前查找范圍的左邊界和右邊界,mid
表示當前查找范圍的中間位置。通過不斷調整left
和right
的值,并將target
與arr(mid)
進行比較,最終可以找到目標元素的位置。如果找到目標元素,則返回其在數組中的索引;如果未找到目標元素,則返回-1。