插入排序C+++实现
void insertSort(vector<int>& nums) {
//像打牌一样,新的牌在已经排序好的牌里面找到自己的位置
int n = nums.size();
for (int i = 1; i < n; ++i) { //不断保证0-1有序、0-2有序、0-3有序
int cur = i;
while (cur >= 1 && nums[cur] < nums[cur - 1]) {
swap(nums[cur], nums[cur - 1]); //如果无序,则交换
--cur;
}
}
}
int main() {
vector<int> nums = { 1, 2, 4, 5, 3, 3, 8, 6 };
insertSort(nums);
for (int& i : nums) cout << i << " ";
}
本文详细介绍了插入排序的基本思想,并提供了一段C++代码实现。通过不断保证已排序部分的顺序,将未排序元素逐个插入到正确位置,最终实现整个序列的排序。示例代码展示了如何对一个整数向量进行插入排序,输出排序后的结果。
791

被折叠的 条评论
为什么被折叠?



