当前位置: 首页 > news >正文

深圳网站建设 设计卓越迈wordpress悬浮下拉

深圳网站建设 设计卓越迈,wordpress悬浮下拉,专业商铺装修设计,博罗建设银行网站今天我们来学习八大排序中的直接插入排序。话不多说,直接上动图。 直接插入排序的主要思想是:当数组只有一个元素的时候,我们可以认为该数组是有序的。所以我们可以选择一个元素放进数组(一般为待排数据的第一个元素)…

今天我们来学习八大排序中的直接插入排序。话不多说,直接上动图。

直接插入排序的主要思想是:当数组只有一个元素的时候,我们可以认为该数组是有序的。所以我们可以选择一个元素放进数组(一般为待排数据的第一个元素)。然后开始排序:找到第二个待排序的数据,把这个元素视为数组里面的元素。(但我们并不知道由于新进一个元素,这个数组是否是有序的)所以要与之前的已经排好序的数组中的元素一一比较,使新数组有序。(假如我们排大序)如果新插入的元素比前一个元素的大,则把新插入的元素放在当前数组的位置然后退出循环(此时数组符合排大序)。如果新插入的元素比前一个元素小,不符合我们排大序的规则,所以我们把前一个元素替换到新插入的元素的位置,同时要保存新插入元素的值(因为新插入元素会被覆盖掉),然后前一个元素的位置视为新插入元素的位置进行与这个位置的前一个位置比较。这样一套下来,我们的新数组就会有序了。然后我们继续添加新的元素放在数组的末尾,重复上面的流程,直到添加完所有待排序的元素为止。

void Insert_Sort(int* arr, int n)           //arr存放待排序的数组,n则是数组的元素个数
{for (int i = 0; i < n - 1; i++){int end = i;               // i为当前有序数组的右边界,i + 1则是待排序元素的下标int tmp = arr[end + 1];      //保存待排序数据的值while (end >= 0){                                     if (arr[end] > tmp){arr[end + 1] = arr[end]; //如果待插入元素的值小于数组的右边界的值则替换end--;               //数组边界。同时数组的右边界下标减1.}else{break;               //如果当前位置的前一个下标的值小于该插入数据的值,则停止循环}}arr[end + 1] = tmp;         //把待插入元素的值放在end + 1下标下,即当前下标的值
}

http://www.dtcms.com/a/583780.html

相关文章:

  • 全景效果图网站医院线上预约
  • 纺织网站制作123纺织网wordpress 表单附件
  • 做国外电影网站新网做网站怎么上传
  • 2_ 如何写一份详细的网站开发方案php网站开发权限管理
  • 东莞市手机网站建设多少钱深圳宣传片制作排名前十名
  • 禹城网站制作网站浏览器兼容性通用
  • 做网站和做阿里巴巴辽宁网站开发
  • auto 自动类型推导以及注意事项
  • 网站开发形成收入怎么做帐常州公司网站模板建站
  • 综合网页设计电商网站优化方案
  • 做推广哪家网站好做网站可以盈利吗
  • seo网站优化系统下载班级优化大师并安装
  • 3.4、Python-集合
  • 建设家具网站的目的及功能定位淘宝页面设计模板
  • 免费 个人 网站网站开发及技术
  • 网站建设与开发定制大学生asp网站开发的实训周
  • 运城盐湖区姚孟信通网站开发中心机机票网站建设
  • 【Java SE 基础学习打卡】03 计算机中数据的表示、存储与处理
  • 优质专业建设申报网站wordpress建站平台
  • 通辽网站建设tlyltd网站建设有趣小游戏
  • 徐州地区网站建设12306网站建设团队
  • 樱桃电视剧西瓜视频在线观看长沙网站seo收费标准
  • 亚马逊seo什么意思百度seo技术优化
  • 浏览器无法打开住房和建设网站最近国内重大新闻事件
  • 如何搭建自己的网站平台厦门市住房和城乡建设局网站
  • 以下属于网站的管理 更新 维护主页网址
  • 深圳快速网站制作哪家公司好制作网站的专业公司哪家好
  • 网站建设入账时进那个会计科目成都旅游公司哪家好
  • 建设手机网站的公司北京十大代理记账公司
  • 做网站需要哪些程序员石家庄做网站的口碑好