排序之插入排序
来源:互联网 发布:淘宝生意参谋 编辑:程序博客网 时间:2024/06/06 04:21
实质:若开始插入第n个元素,则前n-1个元素都已经排序成(即将第n个元素插入前面已经排序好的n-1元素个中),将该元素与前一个元素相比,比较两个大小关系来判断两个数是否需要交换,以此类推,直到找到该元素的合适位置。
C++按从小到大排列代码:
#include <iostream>using namespace std;void output(int m[5]);int main(){const int i = 5;int a[i] = { 56, 23, 15, 452, 32 };output(a);for (int n = 1; n < i; n++){int key,m;key = a[n];m = n - 1;while (m > -1 && a[m] > key){a[m + 1] = a[m];m = m - 1;}//若比前一个元素小,则将前一个元素向后移动一位a[m + 1] = key;//找到需要插入的元素的位置}output(a);system("pause");}void output(int m[5]){for (int i = 0; i < 5; i++){cout << m[i] << " ";}cout << endl;}
#include <iostream>using namespace std;void output(int m[10]);int main(){const int i = 10;int a[i] = { 56, 23, 15, 452, 32,1,56,89,32,96 };output(a);for (int n = 1; n < i; n++){int key,m;key = a[n];m = n - 1;while (m > -1 && a[m] < key){a[m + 1] = a[m];m = m - 1;}//若比前一个元素大,则将前一个元素向后移动一位a[m + 1] = key;//找到需要插入的元素的位置}output(a);system("pause");}void output(int m[10]){for (int i = 0; i < 10; i++){cout << m[i] << " ";}cout << endl;}
阅读全文
0 0
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 排序之插入排序
- 输入输出的管理及vim命令的使用
- bind的IE678的兼容写法
- Ext中Grid所有分页汇总 ——后台操作数据(PageImpl返回数据)
- bzoj 4361: isn 树状数组+动态规划
- 1280 洛谷 尼克的任务
- 排序之插入排序
- MacOS网络配置
- super(LastUpdateOrderDict, self).__init__()是什么意思?
- MY LITTLE GAME | 第一次用Construct2制作html游戏
- 宏定义、内联函数、普通函数的区别
- 1.二维数组-定义 2.二维数组--重点 3.二维数组-遍历
- XMLHttpRequest对象的基本属性:
- 洛谷 1057 传球游戏
- 提升树