算法导论——插入排序
2017-03-28 15:44
155 查看
算法导论开篇就在讲排序算法,首先是最基础的插入排序,过程类似于打牌的时候将手里的牌按大小排好——不断摸牌,将新牌与手里的牌作比较,插入到左侧牌比它小,右侧牌比它大的位置。
基础中的基础,算法实现如下:
#include <iostream>
using namespace std;
int main()
{
int N;
while(cin >> N){
int arr
;
for(int i = 0; i < N; i++){
cin >> arr[i];
}
for(int i = 1; i < N; i++){
int temp = arr[i];
int j = i;
while(j > 0 && arr[j-1] > temp){
arr[j] = arr[j-1];
j--;
}
arr[j] = temp;
}
for(int k = 0; k < N; k++){
cout << arr[k] << " ";
}
cout << endl;
}
}
基础中的基础,算法实现如下:
#include <iostream>
using namespace std;
int main()
{
int N;
while(cin >> N){
int arr
;
for(int i = 0; i < N; i++){
cin >> arr[i];
}
for(int i = 1; i < N; i++){
int temp = arr[i];
int j = i;
while(j > 0 && arr[j-1] > temp){
arr[j] = arr[j-1];
j--;
}
arr[j] = temp;
}
for(int k = 0; k < N; k++){
cout << arr[k] << " ";
}
cout << endl;
}
}
相关文章推荐
- Python实现冒泡排序、选择排序、插入排序、快速排序、归并排序、二分法查找算法(基于《算法导论》伪代码)
- 算法导论笔记ch2_算法基础(插入排序、归并排序、设计算法)
- 算法导论之插入排序和归并排序
- 算法导论之插入排序
- 算法导论的Java实现----2. 插入排序
- 算法导论 第二章 例子与习题代码 插入排序 归并排序
- 《算法导论》中的冒泡排序、插入排序和归并排序实现
- 《算法导论》[第2章] 算法入门-[2.1] 插入排序
- 算法导论编程第2章 插入排序
- 插入排序-《算法导论》学习笔记一
- 第一节:《算法导论》——插入排序
- 算法导论第二章2.1插入排序
- 算法导论之插入排序
- 算法导论-插入排序 insertion sort
- 以PHP学习《算法导论》——插入排序
- 算法导论——JAVA实现“插入排序”算法
- 算法导论-循环不变式、插入排序、归并排序
- 《算法导论》笔记1 : 插入排序
- 《算法导论》第二章----插入排序(伪代码实现、课后习题(递归版本、二分查找策略版本))
- 算法导论第二章《插入排序》