基础排序算法 – 插入排序Insertion sort
2013-06-03 23:17
453 查看
插入排序就是每一步都将一个待排数据按其大小插入到已经排序的数据中的适当位置,直到全部插入完毕。
图例:
C语言代码:
图例:
C语言代码:
1 #include <stdio.h> 2 int main() 3 { 4 int a[5]={5,4,3,2,1},i; 5 6 printf("原本的数字为:"); 7 for(i=0;i<5;i++) 8 { 9 printf("%d ",a[i]); 10 } 11 printf("\n"); 12 13 void insert (int a[],int n); 14 insert (a,5); 15 16 printf("插入法排序后:"); 17 for(i=0;i<5;i++) 18 { 19 printf("%d ",a[i]); 20 } 21 return 0; 22 } 23 24 //插入法 25 void insert(int a[],int n) 26 { 27 int i,j,temp; 28 for(i=1;i<n;i++) 29 { 30 temp=a[i];//temp为要插入的元素 31 j=i-1; 32 while(j>=0&&temp<a[j])//从a[i-1]开始找比a[i]小的数,并把数组元素后移 33 { 34 a[j+1]=a[j]; 35 j--; 36 } 37 a[j+1]=temp;//插入 38 } 39 }引用:http://www.cnblogs.com/kkun/archive/2011/11/23/2260265.html
相关文章推荐
- 基础排序算法 – 插入排序Insertion sort
- 排序算法(一)—插入排序(Insertion sort)
- 排序算法-插入排序 Insertion Sort Θ(n-n)
- 经典算法(8)- 插入排序(Insertion Sort) 及三个基本排序算法的比较
- 排序算法——插入排序(Insertion Sort)
- 排序算法---插入排序(Insertion Sort)
- 排序算法总结之插入排序 Insertion Sort
- 排序算法——插入排序(Insertion Sort)
- 经典排序算法 – 插入排序Insertion sort
- 经典排序算法 – 插入排序Insertion sort
- 排序算法--插入排序(Insertion Sort)_C#程序实现
- 排序算法 之 插入排序InsertionSort
- Insertion_Sort(插入排序)
- 静态链表插入排序(List Insertion Sort)算法
- [算法练习]Insertion Sort 插入排序
- Insertion Sort List 使用插入排序将链表排序
- 插入排序 insertion sort
- 【LeetCode-面试算法经典-Java实现】【147-Insertion Sort List(链表插入排序)】
- 【DS】排序算法之插入排序(Insertion Sort)
- 【排序算法】 插入排序 insertion sort(插入类排序)