C++ 实现插入排序算法:代码示例及解析
以下是使用 C++ 编写的插入排序算法的代码示例,可用于对整数数组进行排序:
#include <iostream>
using namespace std;
void insertionSort(int arr[], int size) {
for (int i = 1; i < 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() {
int arr[] = {6, 3, 8, 2, 9, 1};
int size = sizeof(arr) / sizeof(arr[0]);
insertionSort(arr, size);
cout << '排序后的数组:';
for (int i = 0; i < size; i++) {
cout << arr[i] << ' ';
}
cout << endl;
return 0;
}
这段代码实现了插入排序算法。它从第二个元素开始,将当前元素插入到已排序的子数组中的正确位置。通过重复执行此过程,逐渐将未排序的元素插入到已排序的子数组中,最终得到一个完全排序的数组。
请注意,这只是一个简单的示例来说明插入排序的工作原理。在实际应用中,可能需要处理更复杂的情况,例如数组中包含其他数据类型的元素或需要按不同的顺序进行排序。
原文地址: https://www.cveoy.top/t/topic/bK4e 著作权归作者所有。请勿转载和采集!