单选题
给定序列:1,3,6,9,17,31,39,52,61,79,81,90,96。使用以下代码进行二分查找查找元素 82时,需要循环多少次,即最后输出的 times 值为( )。
int binarySearch(const std::vector& arr, int target) {\tint left = 0;\tint right = arr.size() - 1;\tint times = 0;\twhile (left <= right) {\t\ttimes ;\t\tint mid = left (right - left) / 2;\t\tif (arr[mid] == target) {\t\t\tcout << times << endl;\t\t\treturn mid;\t\t} else if (arr[mid] < target) {\t\t\tleft = mid 1;\t\t} else {\t\t\tright = mid - 1;\t\t}\t}\tcout << times << endl;\treturn -1;}
A.
2
B.
5
C.
3
D.
4
发表评论 取消回复