算法导论笔记之---插入排序
2012-07-24 08:39
274 查看
//插入排序 #include<iostream> using namespace std; void Insert(int *arr,int Count) { for(int i=1;i<Count;++i) { int Now=i; for(int j=i-1;j>-1;--j) if(arr[Now]<arr[j]) swap(arr[Now--],arr[j]); else break; } } int main() { int T=0; int *arr; while(cin>>T,T) { arr=new int[T]; cout<<"please input "<<T<<"numbers: "; for(int i=0;i<T;++i) cin>>arr[i]; Insert(arr,T); for(int i=0;i<T;++i) cout<<arr[i]<<" "; cout<<endl; delete arr; } return 0; }插入排序思想 建立两层循环,外层循环所表示的是要排序的数字,里层循环用来确定该数字应该放在哪里。如图假设外部循环 i=5,则j从4开始递减,直至a[i]所表示的数不小于a[j]。
相关文章推荐
- 插入排序算法学习——算法导论学习笔记
- 算法导论学习笔记(一):插入排序
- 算法导论学习笔记(1)插入排序
- 《算法导论》笔记 第7章 7.3快速排序的随机化版本
- 算法导论学习笔记(一)排序算法之快速排序
- 《算法导论》笔记(1)排序 含部分习题
- 《算法导论》笔记 第8章 8.4桶排序
- 算法导论实验:第二章插入排序 P10
- 算法导论学习笔记(二):合并排序
- 数据结构笔记:插入插入排序、折半插入排序、shell(希尔)排序
- 《算法导论》笔记 第8章 8.4桶排序
- 算法导论学习笔记-第7章 快速排序
- 《算法导论》笔记 第13章 13.3 插入
- 算法导论实验:第二章插入排序 P10
- vector中 迭代器的使用 以及元素的去重、排序、插入、删除操作。 【小笔记】
- 算法学习笔记二:插入排序及循环不变式
- 算法导论学习笔记(一)快速排序及优化
- 《算法导论》笔记 第13章 13.3 插入
- 算法导论实验:第二章插入排序 P10
- 算法导论笔记之快速排序