单选题

下面折半查找程序的时间复杂度为(    )

def binary_search(arr, x):

    low = 0

    high = len(arr) - 1

    while low <= high:

            mid = (low + high) // 2

            if arr[mid] == x:

                  return mid

            elif arr[mid] > x:

                  high = mid - 1

            else:

                  low = mid + 1

      return -1

A

O(n * log n)

B

O(n)

C

O(log n)

D

O(n^2)

赣ICP备20007335号-2