C++实现数组指针排序算法
C++实现数组指针排序算法
以下是将Python代码转换为C++的示例,展示如何使用插入排序算法对数组指针进行排序:
#include <iostream>
#include <vector>
class PointerArraySorter {
public:
static void insertSort(std::vector<int>& arr) {
for (int i = 1; i < arr.size(); i++) {
int key = arr[i];
int j = i - 1;
while (j >= 0 && arr[j] > key) {
arr[j + 1] = arr[j];
j--;
}
arr[j + 1] = key;
}
}
};
int main() {
std::vector<int> arr = {5, 2, 9, 1, 7};
PointerArraySorter::insertSort(arr);
for (int num : arr) {
std::cout << num << ' ';
}
std::cout << std::endl;
return 0;
}
在上述C++代码中,我们定义了一个 PointerArraySorter 类,其中的 insertSort 方法接收一个整数向量(即数组),并使用插入排序算法对其进行排序。排序后的结果将直接修改原始数组 arr。
在 main 函数中,我们使用示例数据 {5, 2, 9, 1, 7} 创建了一个整数向量,并调用 PointerArraySorter::insertSort 方法对其进行排序。最后,我们遍历排序后的数组,并将其打印到控制台上。
请注意,为了实现动态大小的数组,我们使用了 C++ 的 std::vector 容器。
原文地址: http://www.cveoy.top/t/topic/nVs 著作权归作者所有。请勿转载和采集!