(24)直接插入排序

来源:互联网 发布:网络直播电视怎么安装 编辑:程序博客网 时间:2024/06/06 12:40

插入排序的主要思想是:将第一个元素看做有序,从第二个元素起将待排序的元素插入到有序的序列中,使有序的序列逐渐扩大,直到所有元素都插入到有序序列中。


代码:

#include<iostream>using namespace std;void insertSort(int num[],int n) {int temp,j;   //临时变量for (int i = 1; i < n; i++) {temp = num[i]; j = i - 1;while (j >= 0 && temp < num[j]) {num[j + 1] = num[j];j--;}num[j + 1] = temp;}}void main(){int num[12] = { 10,6,2,33,15,12,23,76,1,54,22,9 };insertSort(num, 12);for (auto x : num) {cout << x << " ";}cout << endl;system("pause");}

优化算法:

void insertSort2(int num[], int n) {int temp,j;for (int i = 1; i < n; i++) {temp = num[i]; j = i - 1;while (temp < num[j]) {num[j + 1] = num[j];j--;}num[j + 1] = temp;}}






0 0
原创粉丝点击