下面search函数的平均时间复杂度为( )。

int search(int n, int * p, int target) {   int low = 0, high = n;   while (low < high) {     int middle = (low + high) / 2;     if (target == p[middle]) {        return middle;     } else if (target > p[middle]) {        low = middle + 1;     } else {        high = middle;     }   }   return -1;}
填写答案