单选题
下面 search 函数的平均时间复杂度为( )。
int search(int n, int * p, int target) {\tint low = 0, high = n;\twhile (low <= high) {\t\tint middle = (low high) / 2;\t\tif (target == p[middle]) {\t\t\treturn middle;\t\t} else if (target > p[middle]) {\t\t\tlow = middle 1;\t\t} else {\t\t\thigh = middle - 1;\t\t}\t}\treturn -1;}
A.
O(n)
B.
O(log(n))
C.
O(1)
D.
可能无法返回
发表评论 取消回复