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

免费的网络会议系统西安seo网站建设

免费的网络会议系统,西安seo网站建设,wordpress 二手市场,wordpress页面代码【学习分享】小白写算法之冒泡排序篇 前言一、什么是冒泡排序算法二、冒泡排序算法如何实现三、C语言实现算法四、复杂度计算五、算法稳定性六、小结 前言 最近我要学习下数据结构和算法#xff0c;有兴趣的小伙伴可以点个关注#xff0c;一起学习。争取写的浅显易懂。如果你… 【学习分享】小白写算法之冒泡排序篇 前言一、什么是冒泡排序算法二、冒泡排序算法如何实现三、C语言实现算法四、复杂度计算五、算法稳定性六、小结 前言 最近我要学习下数据结构和算法有兴趣的小伙伴可以点个关注一起学习。争取写的浅显易懂。如果你看不懂那一定是我没学到位。 一、什么是冒泡排序算法 冒泡排序英文bubblesort是很容易理解的一种排序方式。想象一下泡泡从水底按顺序冒出就有画面了。 比如原来有一组6位数序列{4,5,6,3,1,2} 按顺序依次从小到大排列下面的动图演示了冒泡排序算法。 二、冒泡排序算法如何实现 那么如何实现冒泡排序算法呢 还是以动图数组{4,5,6,3,1,2}为例需要执行6轮每1轮设为第i轮要把遍历后最大的数冒泡到第(6-i)的位置。 然后看看第i轮冒泡排序做了什么 比如第1轮先把最大数6经过前后比较找了出来然后把最大数6冒泡到第5的位置。 怎么找到最大数6通过前后比较所以是先4和5比较不需要交换。5和6比较不需要交换。6和3比较交换。6和1比较交换。6和2比较交换。一共交换5次结束第1轮。后面每1轮都是执行一样的循环逻辑。 在第i轮的时候我们用第j位的数和第j1位的数进行比较如果第j1位的数大于第j位的数那么就互换否则就不互换保持原状。 那么关于冒泡排序算法我们已经基本搞清楚了。 三、C语言实现算法 我们设要比较的数组为arr[] 那么用C语言实现冒泡排序算法的代码就可以写出来了。 #includestdio.hvoid bubblesort(int arr[],int n) //冒泡排序算法 {int temp;for(int i0;in-1;i)for(int j0;jn-i-1;j)if(arr[j]arr[j1]) //如果前一个数后一个数那么前后两个数互换{temp arr[j1]; arr[j1] arr[j];arr[j] temp; } }void print(int arr[],int n) //打印数组 {for(int i0;in;i)printf(%d ,arr[i]); }int main() {int arr[6] {4,5,6,3,1,2};printf(冒泡排序前的数组为);print(arr,6);bubblesort(arr,6); //调用冒泡算法printf(\n冒泡排序后的数组为);print(arr,6); } 用gcc编译并运行可以得到升序的数组序列符合预期。 四、复杂度计算 时间复杂度 关于时间复杂度的计算可以看下面这篇文章浅显易懂。 各位学弟学妹别再看教材了时间复杂度看这篇就好了 还是以序列{4,5,6,3,1,2}为例那么我们一共执行了5432115次推广到n次就是n*(n-1)/2次那么时间复杂度就是n^2次。 也可以这么理解c代码中有两个n的嵌套执行语句那么时间复杂度就是n^2。 记为O(n^2)。 时间复杂度有时候还会考虑最好最坏的情况下的计算有点超纲了可以了解下。 冒泡排序最佳情况的时间复杂度为什么是O(n 关于最好情况最坏情况平均情况复杂度请参考如下总结文章。 10种排序算法的复杂度比较与实现 空间复杂度 关于空间复杂度可以看下面文章 空间复杂度计算超全整理一起手撕复杂度计算 冒泡排序的空间复杂度怎么计算呢 在冒泡算法中我们用到了三个临时变量参数i,j,temp注意不是临时的不算在空间复杂度上所以arr和n不算空间复杂度 那就很容易理解了空间复杂度是O(3),一般都记为O(1)。 五、算法稳定性 冒泡排序算法是稳定的吗首先我们要知道什么是算法稳定性。算法的稳定性是指排序算法在排序过程中能否保持相等的元素的相对顺序。那么很明显冒泡排序在处理两个相同元素的时候是不做处理的所以冒泡排序算法是稳定的。 六、小结 本文对冒泡排序算法进行了深入浅出的讲解网上其实有很多大牛写的文章都很不错都可以相互借鉴学习下。希望大家都能掌握算法真理码字不易且行且珍惜~~
http://www.pierceye.com/news/461916/

相关文章:

  • 重庆学校网站建设wordpress 模版安装
  • 公司要招个做网站的人商标设计网站猪八戒
  • 古建设工程造价管理协会网站小程序引流推广平台
  • 网站域名缴费十年外贸建设企业网站服务
  • 游戏网站外链建设网站开发项目的需求分析
  • 确定网站的主题与风格东营市建设项目工伤保险是哪个网站
  • 如何做一张网站平面效果图装宽带需要多少钱
  • 什么网站能让小孩做算术题厦门住房和城乡建设局网站
  • 网站上线过程建设网站什么费用
  • 企业网站域名在哪申请成都广告公司
  • 手机页面网站模板怎么卖宁波网站建设优化找哪家
  • 深圳网站外包公司注册公司流程和费用找哪家
  • 专业新站整站快速排名公司商业网站和企业网站的区别
  • 网站做等保备案河北建设厅网站登陆怎么找附件
  • 网站前台显示数据库指定分类怎么做php优化大师官方免费
  • 用ps软件做ppt模板下载网站c2c网站开发策划
  • 标志空间 网站tk域名网站多少
  • dedecms网站地图插件永康公司网站开发
  • 比较网站建设有没有学做ppt发网站或论坛
  • 用asp做网站流程做科研找论文的网站
  • 新浪网站怎么做推广广告网站模板下载不了
  • 微网站建设哪家优惠h5小游戏在线玩
  • 娄底高端网站建设网站建设费计入 科目
  • 免费企业网站程序上传wordpress 卸载
  • 大庆市建设局网站上不去linux删除WordPress
  • 宣城市建设监督管理局网站下载怎么上wordpress
  • 福州做网站fjfzwl编写软件开发文档
  • 平台设计网站公司电话号码建站哪家好用兴田德润
  • 宝安网站建设信科免费网站开发 自动填写表单
  • 网站怎么更新文章动漫网站在线免费观看