直接插入排序将数字从小到大排序
#include<iostream>
using namespace std;
void InsertSort(int a[], int n)
{for (int j = 1; j < n; j++){cout << a[j];int key = a[j]; //待排序第一个元素int i = j - 1; //代表已经排过序的元素最后一个索引数while (i >= 0 && key < a[i]){//从后向前逐个比较已经排序过数组,如果比它小,则把后者用前者代替,//其实说白了就是数组逐个后移动一位,为找到合适的位置时候便于Key的插入a[i + 1] = a[i];i--;}a[i + 1] = key;//找到合适的位置了,赋值,在i索引的后面设置key值。}
}
void main() {int d[] = { 12, 15, 9, 20, 6, 31, 24 };cout << "输入数组 { 12, 15, 9, 20, 6, 31, 24 } " << endl;InsertSort(d, 7);cout << "排序后结果:";for (int i = 0; i < 7; i++){cout << d[i] << " ";}}
这组代码要对七个数据进行排序,首先设置key,可以理解为监视哨
从15开始,一直到24
如果说监视哨的值小于前一个数的值
比如15和12比较,15大于12,不满足while的条件,那就不调换位置
12在前,15在后
监视哨为9的时候,9和15比较,9小于15,满足while的条件,9和15调换位置,接下来9和12进行比较,9小于12,然后9和12再掉换位置。
以此类推,我们就能完成从前到后的排序
直接插入排序将数字从小到大排序相关推荐
- c语言猜四位数游戏猜10次,C语言猜数字游戏--随机生成4个不相同的数字从小到大排序,用户开始游戏,如果用户猜对数字和数字对应的位置,界面回馈A,如果数字正确位置不正确,则回馈B...
1.看程序运行截图吧!! 由于博主本人较笨,就不动画演示了,如果动画的话可能将是一个漫长的过程! 猜数字游戏.png 2.游戏题目 随机生成4个不相同的数字从小到大排序,用户开始游戏,如果用户猜对数字 ...
- 对数组中的数字从小到大排序
微信小程序开发交流qq群 173683895 承接微信小程序开发.扫码加微信. var arr = [{name:'1',age:1},{name:'2',age:4},{name:'3', ...
- 五个数字从小到大排序java,五个数冒泡排序 用c语言数组定义5个数使用冒泡排序 从小到大...
任意输入5个整数,利用冒泡排序法排序(从大到小) #include main() { int a[6]; /*定义一个整型数组.*/ int i,j,temp; /*定义循环变量和中间变量. 用jav ...
- 数组sort排序方法,数字从小到大排序,汉字拼音音序排序
1.直接用默认的sort方法,是按照Unicode排序,可能存在问题 例如:110,11,12=>11,110,12 (110会在12前面) 2.重写数组的sort方法进行数字排序: arr.s ...
- 输入5个数字从小到大排序
#include <stdio.h> int main() {int i,j,tep;int a[5];printf("请输入5位正整数:");for(i=0;i< ...
- 【青少年编程】【四级】从小到大排序
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复[Scratch]或[Python],即可进入.如果加入了之前的社群不需要重复加入. 微信后台回复"资料下载&quo ...
- 将一个5X5的矩阵中最大的元素放在中心, 4个角分别放4个最小的元素(顺序为从左到右,从上到下,从小到大存放)其余数字从小到大
将一个5X5的矩阵中最大的元素放在中心, 4个角分别放4个最小的元素(顺序为从左到右,从上到下,从小到大存放) 其余数字从小到大 在以前的要求上更改了一下,其余数字从小到大排序 #include &l ...
- python用户输入字符串串从小到大排序_python字符串从小到大排序
python字符串排序问题 a='AADFabddefgilmrsss' 请将该字符串a里的单词重新排序(a-z),并且重def char_cmp(a, b): #实现你的比较规则, 分太少,不值为你 ...
- python实现字符串中中文在前,数字在后且按从小到大排序
如题:使用python3.x 实现一个包含中文数字的字符串中,输出为中文在前面,数字在后面且按从小到大排序. 思路:先将字符串进行排序,然后通过字符串分割实现中文再前面,数字在后面.(欢迎交流其他思路 ...
最新文章
- 文件夹差异文件对比工具 meld
- 10分钟理解CSS3 FlexBox
- HTML5+Bootstrap 学习笔记 1
- 深度学习入门初步——MNIST数据格式如何使用
- Ajax-goahead局部刷新页面
- 《Python核心编程》第二版第18页第一章练习 -Python核心编程答案-自己做的-
- 云服务器更换系统后tomcat,如何对云服务器装tomcat
- oracle中rownum的三种分页方式
- Repo报错:GnuTLS recv error (-9): Error decoding the received TLS packet.
- JavaScript中DOM(第二天)
- 工厂模式和抽象工厂模式
- html里面判断字段显示,HTML特殊字符显示
- bash+vasp+vaspkit能量应变计算弹性常数
- void函数使用return
- 美图秀秀api实现图片的裁剪及美化
- 原来互联网公司想裁员还能这样玩?
- 跨境电商亚马逊最新骗局揭秘:所谓的跨境电商亚马逊店铺真的能赚钱吗?真的靠谱?
- hdu4565 so easy 矩阵
- yxr:Makefile 简单样本
- STM32超低功耗入门之唤醒
热门文章
- 天载股票资讯低估值高分红个股仍是布局方向
- 干货!小程序,爆红的三大规律
- freopen 函数和 fopen 函数简单介绍
- 蒙特卡洛法计算圆周率近似值(C语言)
- THRESH控制网桥netfilter规则执行流程
- GVINS编译出现大量的error: ‘CV_CALIB_CB_ADAPTIVE_THRESH’ was not declared in this scope错误
- Python每天定时发早安晚安语录
- Vue3 - toRef() 使用教程
- 计算机专业简历文案,文案个人简历范文
- JS加密JS解密的好帮手Fiddler