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

电子商务网站开发背景与原因网站建设 手机网站

电子商务网站开发背景与原因,网站建设 手机网站,网站模板带手机站,wordpress 菜单函数这篇博文用来介绍直接插入排序直接插入排序基本思想#xff1a;每次将一个待排序的记录插入到已经排好序的数据区中#xff0c;直到全部插入完为止直接插入排序算法思路#xff1a;在直接插入排序中#xff0c;数据元素分为了有序区和无序区两个部分#xff0c;在这里我们…这篇博文用来介绍直接插入排序直接插入排序基本思想每次将一个待排序的记录插入到已经排好序的数据区中直到全部插入完为止直接插入排序算法思路在直接插入排序中数据元素分为了有序区和无序区两个部分在这里我们将列表左边部分作为有序区列表右边部分作为无序区有序区和无序区的大小是随着排序的进行而变化的。如最开始列表是无序的所以有序区长度为1无序区长度为列表长度-1排序结束后列表变为有序则有序区长度为列表长度无序区长度为0.具体步骤为排序过程中每次从无序区中取出第一个元素将它插入到有序区中的适当位置(即该元素放在此位置有序区仍然有序)使之成为新的有序区重复n-1次可完成排序过程。假设需要将列表从小到大排序想要将从无序区中取出的第一个元素temp插入到有序区中的适当位置需要有一个循环遍历的过程即从该元素位置处依次向前比较会有两种情况1前面的元素waitsortlist[j-1]大于temp则temp需要继续向前比较同时大于temp的元素需要后移一位2前面的元素waitsortlist[j-1]小于等于temp则temp不需要继续比较了因为temp大于有序区中最大的元素有序区伸展一位包含temp另外还需要考虑 j 的边界问题因为会用到 j-1所以 j 需要1防止越界对于无序区某一个元素temp的直接插入代码如下tempwaitsortlist[j]while j1:if tempwaitsortlist[j]waitsortlist[j-1]jj-1else:breakwaitsortlist[j]temp外层是一个列表的遍历加上上面的代码为i0ji1while jtempwaitsortlist[j]while j1:if tempwaitsortlist[j]waitsortlist[j-1]jj-1else:breakwaitsortlist[j]tempii1ji1可以看出列表的第一个元素必为有序区遍历的过程中不断扩大有序区的范围对于列表某一个元素来说就是将其插入在有序区中适当的位置外层循环遍历结束后有序区也扩充为列表长度即排序结束。该算法的时间复杂度为O(n^2)因为有两层循环时间开销比较大空间复杂度为O(1)只是用了常数阶的空间来存储变量用以直接插入排序全部代码为(实际上看了前面的相信你已经能写出来了:D直接插入排序def DirectInsertionSort(waitsortlist):i0ji1while jtempwaitsortlist[j]while j1:if tempwaitsortlist[j]waitsortlist[j-1]jj-1else:breakwaitsortlist[j]tempii1ji1return waitsortlistif __name____main__:waitsortlist[9,8,7,6,5,4,3,2,1,0]print(DirectInsertionSort(waitsortlist))运行结果为直接插入排序 (带监视哨)哨兵的概念一切为简化边界条件而引入的附加结点(元素)均可称为哨兵。在上面的代码我们可以看到有这一段while j1:内循环每一次比较前都需要判断 j 是否越界有没有不需要判断的办法呢当然有这就是哨兵的作用将上面的代码改为def DirectInsertionSortEye(waitsortlist):i1ji1while jtempwaitsortlist[j]waitsortlist[0]tempwhile tempwaitsortlist[j]waitsortlist[j-1]jj-1waitsortlist[j]tempii1ji1return waitsortlistif __name____main__:waitsortlist[0,9,8,7,6,5,4,3,2,1,0]print(DirectInsertionSortEye(waitsortlist))输出的结果为我们将waitsortlist[0]设置为哨兵传入列表的时候该位置也不能够放置有效元素用列表一个元素的空间判断越界与否的比较时间。可以看出一次循环少判断一次n次循环少判断n次当数据量较大时很明显是优于不带监视哨的直接插入排序。带监视哨的直接插入排序思想也很简单在原有基础上稍加修改即可这里不再赘述。
http://www.pierceye.com/news/474663/

相关文章:

  • 宁波网站制作优化服务公司推广找客户平台
  • 个人网站 域名选择在线画图网页版
  • 外贸网站建设双语网站建设广州景点
  • 深圳宝安p2p网站系统的建设手机网站开发+手机模拟器
  • 合肥营销网站建设设计网站关键词做标签
  • 网站建设与管理实训心得怎么写wordpress图片太大
  • 用个人免费空间快速建立个人网站后方平台网络营销案例2022
  • 网站搭建h5是什么做图软件ps下载网站有哪些内容
  • 企业网站推广技巧和方法免费个人简历模板官网
  • wordpress 全站备份网站建设的实验心得体会
  • 给网站开发APP网站可信度必须做吗
  • 用地方名字做网站做网站那种语言好
  • 天河网站(建设信科网络)濮阳市城乡一体化示范区主任
  • 扬州网站建设link5深圳建外贸网站
  • 网站开发用什么编程淘宝网站开发方式
  • 网站ui设计包括哪些原则网站flash代码
  • 北京建设执业注册中心网站北京中兴时代网站建设
  • 深圳建站公司设计肥城网站建设推广
  • 对网站建设服务公司的看法wordpress主题自定义打不开
  • 宁夏电力建设工程公司门户网站万能编程软件
  • 网站上常用字体企业服务中心官网
  • 大作设计网站域名访问升级紧急中拿笔记好
  • 银川做网站的有哪些建筑工程网上报建网站诚信手册
  • 本地做网站绑定域名ic商城网站建设南大
  • react 网站开发seo软件资源
  • 中国最大免费wap网站怎样才能建设只是于自己的网站
  • 装修网站平台排行榜wordpress做视频网站吗
  • flash网站建设价格播放器网站怎么做
  • 微网站 源码 免费文本编辑器 网站
  • 电商网站通用左侧弹出导航有南昌网站优化公司