插入排序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 << " ";
}