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

网站建设优化推广教程计算机软件开发培训

网站建设优化推广教程,计算机软件开发培训,北京网络公司哪家最好,遂宁建设机械网站今天要讲一个是冒泡排序,进一个是快排,首先是冒泡排序,我相信大家接触的第一个排序并且比较有用的算法就是冒泡排序了,冒泡排序是算法里面比较简单的一种,所以我们先看看一下冒泡排序 还是个前面一样,我们…

今天要讲一个是冒泡排序,进一个是快排,首先是冒泡排序,我相信大家接触的第一个排序并且比较有用的算法就是冒泡排序了,冒泡排序是算法里面比较简单的一种,所以我们先看看一下冒泡排序

还是个前面一样,我们先看一下单趟排序

假设我们又以下数组

62c87d403514455ea48ed2fefa9ad252.png

我们想要对他进行排序

那么此时我们先看第一个位置和第二个位置

97fa0d3a02a5429c8552c5f4f50a714a.png 

i和j位置,如果这里i位置的值大于j位置的值,那么我们就让他们交换,否则就让i和j同时向后走一位

81857029a63b450a907dece7f54eff67.png 

 让i和j位置的值进行交换,然后让i和j同时向后走一位

49071040209c4a7ca65ea757a1fb090c.png

 然后就继续比较i和j位置的值

1881fc6c38a340699c49a56f51ae5484.png

 然后最后排好就是这样子的,此时我们一趟就排序结束了,这时候我们可以看到,我们数组的最后一个元素是最大的,所以我们继续排序,从第0和位置开始到现在9后面的位置,依次比较,如果i大于j位置的元素就交换否则就让i和j同时向后走

下面我们就看一下代码

d6f459732a7342ef9deb5b9812b93f4c.png

代码也是很简单基本没什么好看的

下面我们看一个🐂的排序 ,快排,听名字就知道一定很快

下面就看一下

假设我们是这一组数据

b43ad8fd01ca40b8ad0342ec98fe78c4.png

 我们先说思想,这里就是先选一个数,然后左边找比选定的key大的,右边找小的,然后两个位置交换,然后让最后两个位置相遇后与key位置的值交换,最后就可以让key位置的值的左边都是比key小的,右边都是比key大的

就是这样,所以我们现在来看一下

d16bdabec8e74484bbd3ad07de77d756.png

 首先左边找大,右边找小,然后找到了就交换

6bc4540a017b41e88a34683d7a756149.png

 然后继续找,找到了就交换

8505466b921c4d0ebeb6f1ee6e57804d.png

 最后直到left不小于right说明就剩下最后一个了,然后我们就让相遇的位置与key位置的值交换,最后我们就可以看到

6的左边都是小于他的,6的右边都是大于他的

到了这里我们一趟排序就结束了,我们想一下刚才排序的过程,我们用左边第一个值作为key,然后我们右边先开始找的小于key位置的值,我们这里就先记住,如果是左边为key那么就右边先走,如果右边为key那么就左边先走,其中这里的key并不是某一个固定的值,我们可以选数组其他位置的值为key但是那样的话容易出错,所以我们可以选择左边或者右边的值为key,那么这样我们就一趟排序结束了

这时候我们就可以想,怎么样可以把他排序好

我们这时候继续看一下

1db7edb1077d443bb7ce31463cb4fe86.png 

这时候我们的6已经拍好了,所以我们就不需要在管6了,我们就可以让他继续 

e0486343fd874693bcce4ca0ebc2eab4.png

递归下去,以一边的right以6这个位置-1为末尾,另一边以6这个位置+1为起始点

5bd2658768d44365a2389d5bf333fdc6.png 

 然后我们继续递归

e80fe768c7154bbe8a7b6058d0211b4c.png

就这样下去我们就可以依次拍好,让每一个值的左边都是小于他的右边都是大于他的,这里我们认为如果只剩下一个数字那么就是有序的。所以这里如果l不小于r那么就 只剩下一个数字

最后排序好就是这样

0b16a57f243b470e852e9b3f4c9378bf.png

 就是这样,然后我们就排序好了

下面我们就来看一下代码

6c909672dcc94459b15955bc8138aa6b.png

 

 首先我们这里定义key为left,然后我们就开始找大和小,然后让他们交换,知道left不小于right说明已经找完了,最后让left和right相遇的位置和key位置的值交换,然后就进行递归

你们可以画一下递归展开图

就是这样,主要是这里画递归展开图太麻烦了,就不画了,而且之前在树遍历那一块画了很多遍,思想已经传达到了

这个就是快排

完了介绍快排的时间复杂度

 

 

http://www.15wanjia.com/news/170028.html

相关文章:

  • 网站注册凡科在线教育网站制作
  • 潮汕学院网站开发怎样做网络推广给我 你所有地方都上手
  • 东莞万江网站制作江苏省建设信息网官网
  • 德州市建设小学网站腾讯云域名续费
  • 淘宝做海淘产品 网站折扣变化快wordpress 蜘蛛
  • 做网站沧州仿站小工具+wordpress
  • 太原顶呱呱做网站地址电话外链发布平台大全
  • 网站后台管理系统 aspwordpress仿唯品会
  • 推广网站弄哪家好wordpress登陆可见
  • 插件素材网站做网站被罚款
  • 信息图表设计网站电子商务平台管理
  • 智慧团建注册入口做seo推广一年大概的费用
  • 网站备案跟域名有什么关系论坛类网站备案吗
  • 广东省住房和城乡建设厅网站企业网站建设 百度文库
  • html5网站开发公司有哪些网站能免费建站
  • 企业网站推广方案范文正规培训机构有哪些
  • 如何在图片上添加文字做网站网红网站建设官网
  • 去别人网站挂黑链西安个人网站建设
  • 金华建设网站综合门户网站源码
  • 品牌网站建设gs鼎城网站建设
  • 东莞横沥网站制作公司网站制作多少钱
  • 校园网站制作方法如何看网站的ftp
  • 义乌哪里有学做网站的余姚网
  • 怎么用一个主机做多个网站好订单网服装加工接单
  • 网站开发公司照片服装公司网站策划书
  • 提供企业网站建设价格妇科医院网站建设
  • 高科技公司网站模板公司部门有哪些
  • 深圳网站建设联雅谷歌推广电话
  • 企业网站模板下载定西营销型网站建设
  • 学院加强网站建设上海装修公司前十强