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

设计一套网站多少钱CMS网站建设优势

设计一套网站多少钱,CMS网站建设优势,潍坊优化网站,上海网络维护哪家品质好目录 直接选择排序算法的思想 优化直接选择排序算法的思想 代码实现#xff08;默认升序#xff09; 直接选择排序算法的思想 直接选择排序算法的思想类似与直接插入排序 区别在于从大到小选择最小的元素或者最大的元素直接放在元素应该停留的位置每次从待排序的元素中选…目录 直接选择排序算法的思想 优化直接选择排序算法的思想 代码实现默认升序  直接选择排序算法的思想 直接选择排序算法的思想类似与直接插入排序 区别在于从大到小选择最小的元素或者最大的元素直接放在元素应该停留的位置每次从待排序的元素中选出最小或者最大的元素根据降序或者升序选择 存放在序列的起始位置直到全部待排序的数据元素排完为止 优化直接选择排序算法的思想 优化前 每次从待排序的元素中选出最小或者最大的元素存放到应该停留的位置再次选出次大或者次小的数存放到应该停留的位置这样做的话每次只能选出一个元素 优化后 而可以优化的是每次在待排序的元素中选出最大和最小的两个元素放在各自最后应该停留的位置 再选出次大和次小的元素放在最后改停留的位置 代码实现默认升序 代码演示 void Swap(int* p1, int* p2) {int tmp *p1;*p1 *p2;*p2 tmp; }void SelectSort(int* a, int size) {int left 0;int right size - 1;while (left right){int min left;int max right;for (int i left; i right; i){if (a[i] a[min]){min i;}if (a[i] a[max]){max i;}}Swap(a[left], a[min]);if (max left){max min;}Swap(a[right], a[max]);left;right--;} } 代码解析 left 表示数组首元素的下标right 表示数组尾元素的下标 以排成升序为例 找到数组中最小的元素时就放在下标为 left 的元素处 注意这里的放入不是直接覆盖首元素而是和首元素交换 且找到数组中最大的元素时就放在下标为 right 的元素处同样是交换 再找到数组中次小的元素和次大的元素进行交换……………… 每交换一对元素那么 left 就递增 1 而 right 就递减 1 直到 left right 时说明所有元素都停留再了最后应该停留的位置 这时的数组就是升序 min 是数组中最小元素的下标而 max 是数组中最大元素的下标 再通过 left 和 right 为数组的区间来遍历数组找到最小元素的下标赋值给 min 找到最大元素的下标赋值给 max 这样做的原因是因为最开始 left 是 0 right 是 size-1找到了最小和最大的元素后放在了首尾位置那么数组首尾位置就不用再遍历了而且刚好 left 递增了 1right 递减了 1如果找到了次大的元素和次小的元素时同样如此所以用 left 和 right 控制数组的区间刚好合适 找到最小元素的下标 min 时和首元素的下标 left 交换 找到最大元素的下标 max 时和尾元素的下标 right 交换 交换时需要注意一种情况因为是先把最小的元素交换到数组首元素的位置 当如果首元素就是最大的元素时就会出问题因为这时的 max 就在首元素的位置 但是已经把最小的元素交换到这里了而 max 的位置没有更新那么如果再交换最大元素和尾元素时就会发生错乱就会把最小的元素交换到尾元素去这样就不能实现升序了 改正的办法是判断 max 是否和 left 相同如果相同的话就更新 max 的位置 因为最开始 min 和 left 交换了所以此时最大的元素就在 min 处直接把 min 赋值给 max 即可 代码验证
http://www.hkea.cn/news/14330474/

相关文章:

  • 天水建设局网站渣土治理腾讯企点app下载安装
  • 建设部网站预应力资质免费大空间网站
  • 网站托管服务wordpress 设置页面
  • app制作过程和网站一样吗旅游类网站模板
  • 骨干校 建设网站手机网站与普通网站的区别
  • 商丘微网站wordpress在哪放商务通代码
  • 龙之向导外贸经理人网站迈网科技 官方网站
  • 济南国画网站济南网站建设公司广州建设投资集团有限公司
  • 网站更新维护西安网站建站
  • 有没有帮人做CAD的网站wordpress文库插件
  • 《网站设计与建设》电子书网站广审怎么做
  • 深圳购物商城网站设计定制开发一款小程序多少钱
  • 伪静态 网站如何扫描妇科医院手机网站
  • 东莞网站建设代理如何买网站
  • 广西网站建设推广大概需要多少钱国内网页设计网站
  • seo服务的三种方式石家庄关键词优化软件
  • 海安县住房和城乡建设局网站wordpress手册 chm
  • 广东石油化工建设集团公司网站电商网站的建设步骤
  • 网站建设与运营公司财务预算全国建设项目竣工验收公示网站
  • 犀牛云做网站一年多少钱网页设计实训报告大专
  • 怎么备份网站数据库大男人直播视频
  • 最简单的网站模板下载保定网站建设冀icp备
  • 中国十大网站排名学校网站建设整改报告
  • 国内十大少儿编程品牌中山做网站优化
  • 中国建设职业注册中心网站dw网页制作教程简单
  • 雷神代刷推广网站做外贸网站需要注意些什么问题
  • 深圳网站建设好不好wordpress打字烟花
  • 嘉定网站建设哪里好制作微信网页
  • 网站底部导航栏自助建站免费建站平台
  • 网站开发群徐州做网站设计