请创建一个一维整型数组用来存储待排序关键码,关键码从数组下标为1的位置开始存储,下标为0的位置不存储关键码。输入关键码的个数,以及各个关键码,采用直接插入排序的方法并采用哨兵法对关键码数组进行排序,输出每轮比较的过程。

输入描述

各个命令以及相关数据的输入格式如下:
第一行输入关键码的个数n
第二行输入n个整型关键码

输出描述

输出关键码比较过程,即输出每轮中向后移动的元素,每轮一行,关键码之间以空格隔开,最后一个关键码后有空格,然后回车,不重复输出,不输出空行,最后输出排好序的所有关键码,以空格隔开,最后回车。

输入样例

10
2 5 9 8 7 4 3 10 16 13

输出样例

9
9 8
9 8 7 5
9 8 7 5 4
16
2 3 4 5 7 8 9 10 13 16

思路:略。

通关代码1:

#include<iostream>
#define MAXSIZE 100
using namespace std;void Insert(int* a, int aLen)//a是待排数组,aLen是待排数组长度
{for (int i = 1; i < aLen; i++)//从下标1开始,因为下标0默认排好{int temp = a[i];//摸牌手抓牌for (int j = i - 1; j >= 0 && temp < a[j]; j--){a[j + 1] = a[j];//把比temp大的数依次往后移动一位cout << a[j] << ' ';a[j] = temp;//将temp插入到原a[j]的位置}}
}int main()
{int Data[MAXSIZE];int n;cin >> n;for (int i = 0; i < n; i++)cin >> Data[i];Insert(Data, n);for (int i = 0; i < n; i++)cout << Data[i]<<' ';return 0;
}

通关代码2:

#include<iostream>#define MAXSIZE 100using namespace std;int main()
{int n;cin >> n;int a[MAXSIZE];for (int i = 1; i <= n; i++)cin >> a[i];for (int i = 2; i <= n; i++){int temp = a[i];while (temp < a[i-1]){a[i] = a[i - 1];cout << a[i] << ' ';i--;}a[i] = temp;}for (int i = 1; i <= n; i++)cout << a[i] << ' ';return 0;
}

D-OJ刷题日记:直接插入排序验证性实验 题目编号:584相关推荐

  1. D-OJ刷题日记:快速排序验证性实验 题目编号:589

    题目描述 评论 请创建一个一维整型数组用来存储待排序关键码,关键码从数组下标为1的位置开始存储,下标为0的位置不存储关键码.输入关键码的个数,以及各个关键码,采用快速排序的方法对关键码数组进行排序,输 ...

  2. D-OJ题 直接插入排序验证性实验 题目编号:584

    [D-OJ](直接插入排序验证性实验 题目编号:584) 题目描述 请创建一个一维整型数组用来存储待排序关键码,关键码从数组下标为1的位置开始存储,下标为0的位置不存储关键码.输入关键码的个数,以及各 ...

  3. 直接插入排序验证性实验 题目编号:584

    题目要求: 请创建一个一维整型数组用来存储待排序关键码,关键码从数组下标为1的位置开始存储, 下标为0的位置不存储关键码.输入关键码的个数,以及各个关键码,采用直接插入排序 的方法并采用哨兵法对关键码 ...

  4. D-OJ刷题日记:起泡排序验证性实验 题目编号:586

    请创建一个一维整型数组用来存储待排序关键码,关键码从数组下标为1的位置开始存储,下标为0的位置不存储关键码.输入关键码的个数,以及各个关键码,采用起泡排序的方法对关键码数组进行排序,输出每轮比较的过程 ...

  5. 【宫水三叶的刷题日记】468. 验证IP地址

    题目描述 这是 LeetCode 上的 468. 验证IP地址 ,难度为 中等. Tag : 「模拟」.「双指针」 给定一个字符串 queryIP.如果是有效的 IPv4 地址,返回 "IP ...

  6. 一个算法笨蛋的12月leetCode刷题日记

    类似文章 一个算法笨蛋的2021年11月leetCode刷题日记 一个算法笨蛋的2021年12月leetCode刷题日记 一个算法笨蛋的2022年1月leetCode刷题日记 一个算法笨蛋的2022年 ...

  7. 菜菜的刷题日记 | 66.加一 Plus One

    系列索引:菜菜的刷题日记 | 被LeetCode用Python狂虐的那段日子 菜鸡的刷题之路--2022/1/7 文章目录 [题目] [我的代码] [参考代码1] [参考代码2] [参考代码3] [思 ...

  8. 各大OJ刷题平台汇总

    前言 想成为一名高级工程师,算法还是要有的,至少在入门编程和进入公司之前都是必备的.刷题也可以很好的锻炼动手能力和逻辑思维,今天就给大家介绍一些知名的在线刷题平台,都是干货哦! 力扣(leetcode ...

  9. 牛客刷题日记(2021-12-8)

    牛客刷题日记(2021-12-8) 题目: 以下哪个接口的定义是正确的?( )interface B { void print() { } ;}interface B { static void pr ...

最新文章

  1. 二叉树的层序遍历和二叉树的线索化
  2. java C语言内存占用_使用Cgroup限制Java使用的内存量-思路
  3. 好程序员Web前端分享程序的三大结构(二)while循环
  4. PHP进行生成并且导出CSV文件
  5. 从傅里叶(Fourier)变换到伽柏(Gabor)变换再到小波(Wavelet)变换
  6. xml vs db.properties
  7. PostgreSQL 并行查询概述
  8. win 系统 32X- 64X 任意安装方法
  9. System.load 和 System.loadLibrary详解
  10. mysql public权限_MySQL · 引擎特性 · Binlog encryption 浅析
  11. iOS中使用SFHFKeychainUtils保存用户密码
  12. 线性代数matlab的心得体会,线性代数的学习心得
  13. 在开放环境的步态识别:一个基准(二)
  14. Laravel 博客开发|网站打开速度优化
  15. 微信小程序直接上传文件到阿里云OSS组件封装
  16. linux串口操作及设置
  17. Ubuntu系统腾讯会议使用ffmpeg屏幕录制+声音录制
  18. 微信小程序学习笔记(三)——两名片小程序实例
  19. stm32用python编程_使用 Python 来开发 STM32F411 !
  20. PHP八字强弱计算,八字强弱自动计算,在线测试生辰八字强弱

热门文章

  1. SAP UI5 图片显示控件 Avatar 的使用方式介绍试读版
  2. 2019年北京摇号窗口办理地址、电话
  3. for循环标记使用方法、配合Break,Continue例题演示
  4. 开源点云数据处理 开源_云供应商现在正在推动开源
  5. vCenter补丁升级
  6. 常用正则以及正则学习(整理)
  7. 报:类com.qin.servlet.HelloServlet不是Servlet
  8. dell10代cpu装linux,戴尔OptiPlex 7080MT装win7系统及bios设置(完美支持10代cpu)
  9. 使用StrongSwan配置IPSec
  10. wgt文件怎么安装到手机_wgt是什么文件格式,wgt扩展名文件如何打开?