| 插入排序是最简单最粗暴的排序方式,其基本思想是:对于已经有序的前i-1个数字,将第i个数字插入至合适位置 时间复杂度为:O(n^2)
/*插入排序 时间复杂度:O(n^2) */ #include<stdio.h> void Swap(int *a,int *b) { int temp; temp = *a; *a = *b; *b = temp; } void InsertSort(int data[],int length) { int i = 0; int j = 0; for(i = 1;i < length;++i) { for(j = i;j > 0;--j) { if(data[j] < data[j - 1]) { Swap(;data[j], ;data[j - 1]); } else { break; } } } } int main() { int data[8] = {4,7,2,6,5,9,3,8}; int i = 0; InsertSort(data,8); for(i = 0;i < 8;i++) { printf("%d ",data); } printf("\n"); getchar(); return 0; }
摘自 泡泡腾
| |