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

官方网站建设要点企业网站优化的方式

官方网站建设要点,企业网站优化的方式,神网站建设,全国新冠疫苗接种人数最新消息冒泡排序#xff0c;是比较简单的一种排序算法。 它的命名源于它的算法原理#xff1a;重复的从前往后#xff08;或者从后往前#xff09;#xff0c;依次比较记录中相邻的两个元素#xff0c;如果他们顺序错误就把它们交换过来#xff0c;直到没有再需要交换的元素是比较简单的一种排序算法。 它的命名源于它的算法原理重复的从前往后或者从后往前依次比较记录中相邻的两个元素如果他们顺序错误就把它们交换过来直到没有再需要交换的元素就说明该记录已完成排序。 它看起来就像是把最大的元素或最小的元素经由交换慢慢的‘浮’到数列的顶端故名冒泡排序。 我们通过将一个无序数列按升序排序来演示算法原理。 如果你想学习自动化测试我这边给你推荐一套视频这个视频可以说是B站播放全网第一的自动化测试教程同时在线人数到达1000人并且还有笔记可以领取及各路大神技术交流798478386    【已更新】B站讲的最详细的Python接口自动化测试实战教程全集实战最新版_哔哩哔哩_bilibili【已更新】B站讲的最详细的Python接口自动化测试实战教程全集实战最新版共计200条视频包括1、接口自动化之为什么要做接口自动化、2、接口自动化之request全局观、3、接口自动化之接口实战等UP主更多精彩视频请关注UP账号。https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from333.337vd_source488d25e59e6c5b111f7a1a1a16ecbe9a 算法流程 1. 比较相邻元素如果第一个比第二个大就交换它们两个。 2. 对每一组相邻元素做同样的工作从开始到最后一对这时最后的元素应该会是最大的数。 3. 针对所有元素重复步骤 1,2除了最后一个元素这时倒数第二个元素应该会是第二大的数。 4. 持续每次对越来越少的元素重复上面的步骤直到没有任何一对数字需要比较。 图解步骤 有一个数列 [4, 2, 6, 5, 3, 9]通过冒泡排序的步骤如下 代码实现 总结 1、一个长度为 n 的数列我们最多需要进行 n-1 轮比较 2、第 m 轮需要 n-m-1 次比较 根据上述思想使用 python 代码来实现 l [1, 7, 5, 6, 2, 8, 3, 9, 4] n len(l) for m in range(n-1): # 外层循环决定需要排序的轮次for i in range(n-m-1): # 内层循环决定要比较的次数if l[i] l[i1]:l[i], l[i1] l[i1], l[i]print(l) 输出结果 [1, 5, 6, 2, 7, 3, 8, 4, 9] [1, 5, 2, 6, 3, 7, 4, 8, 9] [1, 2, 5, 3, 6, 4, 7, 8, 9] [1, 2, 3, 5, 4, 6, 7, 8, 9] [1, 2, 3, 4, 5, 6, 7, 8, 9] # 到这里其实已经排序结束了 [1, 2, 3, 4, 5, 6, 7, 8, 9] [1, 2, 3, 4, 5, 6, 7, 8, 9] [1, 2, 3, 4, 5, 6, 7, 8, 9] 可以看到循环进行了 5 次就得到了正确的结果但是程序还是进行了剩下的循环。对上面的程序进行优化得到下面的改进版。 l [1, 7, 5, 6, 2, 8, 3, 9, 4] n len(l) for m in range(n-1):flag True # 设置一个标志位for i in range(n-m-1):if l[i] l[i1]:l[i], l[i1] l[i1], l[i]flag False # 如果本能循环还需要交换就改变flag的值if flag: # 如果flag没有改变就说明排序成功了breakprint(l) 运行结果 [1, 5, 6, 2, 7, 3, 8, 4, 9] [1, 5, 2, 6, 3, 7, 4, 8, 9] [1, 2, 5, 3, 6, 4, 7, 8, 9] [1, 2, 3, 5, 4, 6, 7, 8, 9] [1, 2, 3, 4, 5, 6, 7, 8, 9] 分析总结 1. 时间复杂度 若列表的初始状态是正序的一趟扫描即可完成排序。所需的比较次数 C 和移动次数 M 均为最小值 Cn-1M0所以冒泡排序的最好时间复杂度为 O(n) 若列表的初始状态是反序的需要进行 n-1 趟排序。每趟排序要进行 n-i 次比较且每次比较都必须移动记录 2 次来达到交换记录的位置。在这种情况下比较和移动次数均达到最大值 C n(n-1)/2O(n2)M2n(n-1)/2O(n2) 冒泡排序的最坏时间复杂度为 O(n2) 综上冒泡排序的平均时间复杂度为 O(n2) 2. 空间复杂度 冒泡排序算法过程中内存空间稳定所以空间复杂度为 O(1) 3. 稳定性分析 冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较交换也发生在这两个元素之间。 所以如果两个元素相等是不会再交换的如果两个相等的元素没有相邻那么即使通过前面的两两交换把两个相邻起来这时候也不会交换所以相同元素的前后顺序并没有改变所以冒泡排序是一种稳定排序算法。 4. 应用分析 因为冒泡排序的时间复杂度为 O(n2)一般应用于小规模数据的排序。且冒泡排序逻辑比较简单易于理解一般会用于教学。
http://www.w-s-a.com/news/195980/

相关文章:

  • 昆明做网站建设怎么样做网站赚钱全攻略
  • 企业网站建设实战教程微信如何注册小程序
  • 做一件代发网站百度seo服务
  • 小说网站开发 公司可以做行程的网站
  • 古交市网站建设公司apk连接wordpress
  • 网页 网 址网站区别wordpress菜单居右
  • 网站建设搭建运营一台云服务器做多个网站
  • 用php做网站用什么框架推广网站推荐
  • 如何用二级域名做网站多用户网上商城
  • 河南省建设科技网站浅谈电子商务网站建设与规划
  • 网站空间需要续费青海网站建设推广
  • 网站开发本地环境企业网站建设排名口碑
  • 做新闻的网站怎样赚钱个人网站课程设计报告
  • 网站设计样例那个网站做图片好看
  • 小型公司网站建设深圳网络营销策划有限公司
  • 国内优秀企业网站做视频网站用什么系统
  • 网站建设入门pdfwordpress网站标题
  • 专业网站的定义网站运营的概念
  • 外贸服装网站建设网页美工设计说明书
  • 郑州专业做网站公百度翻译api wordpress
  • 做网站哪里找大学的一级或二级域名
  • 没有静态ip可以做网站服务器上饶网站制作需要多少钱
  • 网站建设wangzhii做国外网站做什么内容
  • 网站建设 搞笑笑话经典 wordpress主题下载
  • 做网站要懂哪些wordpress 站点网络
  • 郑州外贸网站建设公司排名网站设计做啥好
  • 网站开发合同付款比例wordpress调用指定文章内容
  • 湖北平台网站建设哪里好辽宁建设工程信息网官网平台
  • 公司优化是什么意思?洛阳seo博客
  • 普通建站网站首页制作模板