在给定指向某个元素的指针的排序向量中查找该元素的索引,可以通过以下步骤实现:
以下是一个示例的C++代码实现:
#include <iostream>
#include <vector>
int binarySearch(std::vector<int>& sortedVector, int target) {
int start = 0;
int end = sortedVector.size() - 1;
while (start <= end) {
int mid = start + (end - start) / 2;
if (sortedVector[mid] == target) {
return mid;
} else if (sortedVector[mid] > target) {
end = mid - 1;
} else {
start = mid + 1;
}
}
return -1;
}
int main() {
std::vector<int> sortedVector = {1, 3, 5, 7, 9, 11, 13};
int target = 7;
int index = binarySearch(sortedVector, target);
if (index != -1) {
std::cout << "The index of " << target << " is " << index << std::endl;
} else {
std::cout << "The element " << target << " is not found in the vector." << std::endl;
}
return 0;
}
在这个示例中,我们定义了一个排序向量 sortedVector
,并使用二分查找算法在其中查找目标元素 target
的索引。如果找到目标元素,则输出其索引;否则,输出未找到的提示信息。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云