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

广州网站制作开发公司金网科技

广州网站制作开发公司,金网科技,做ppt图表的网站,小程序免费开发一.前情提要 1.介绍 冒泡法排序法#xff1a; 1)冒泡排序#xff08;Bubble Sort#xff09;是一种简单的排序算法#xff0c;它重复地遍历要排序的列表#xff0c;一次比较相邻的两个元素#xff0c;并且如果它们的顺序错误就将它们交换过来。重复这个过程直到没有需…一.前情提要 1.介绍 冒泡法排序法 1)冒泡排序Bubble Sort是一种简单的排序算法它重复地遍历要排序的列表一次比较相邻的两个元素并且如果它们的顺序错误就将它们交换过来。重复这个过程直到没有需要交换的元素即可完成排序。 2)这个算法的名字来自于在排序过程中较大的元素会经由交换“冒泡”到数列的顶端而较小的元素则会慢慢“沉”到数列的底端。 3)下面是冒泡排序的基本步骤 ①比较相邻的两个元素。如果第一个比第二个大升序排序则交换它们。 ②对每一对相邻元素重复上述步骤直到没有任何一对元素需要比较。 ③重复步骤1和2直到整个列表都已经排好序。 4)示例图借鉴了C语言——冒泡排序_冒泡排序c语言-CSDN博客)----- 如有侵权联系作者删除 二.具体代码 #include stdio.h // 定义冒泡排序函数 void bubbleSort(int arr[], int n) { int i, j, temp; for (i 0; i n - 1; i) { for (j 0; j n - i - 1; j) { // 如果当前元素大于后面的元素则交换它们 if (arr[j] arr[j 1]) { temp arr[j]; arr[j] arr[j 1]; arr[j 1] temp; } } } } int main() { int arr[] {64, 34, 25, 12, 22, 11, 90}; int n sizeof(arr) / sizeof(arr[0]); int i; printf(原始数组: \n); for (i 0; i n; i) { printf(%d , arr[i]); } printf(\n); bubbleSort(arr, n); printf(排序后的数组: \n); for (i 0; i n; i) { printf(%d , arr[i]); } printf(\n); return 0; } 三.代码解析 1.流程冒泡排序是一种简单的排序算法bubbleSort()中通过多次遍历数组比较相邻元素的大小并交换它们从而将最大的元素逐步“冒泡”到数组的末尾。这个函数接受一个整型数组 arr 和数组的长度 n并对数组进行排序。具体实现是通过两层嵌套的循环外层循环控制每一轮的比较次数内层循环用于比较相邻元素并进行交换。主函数 main()它定义了一个整型数组 arr并初始化了一些数据。然后通过 sizeof 运算符计算了数组的长度并将其赋值给变量 n。接着它使用 printf() 函数打印出原始数组的内容。然后调用了 bubbleSort() 函数对数组进行排序。最后再次使用 printf() 函数打印出排序后的数组内容。 2.细节为什么 i n - 1j n - i - 1等 ①外层循环的终止条件是 i n - 1 原因是因为在每一轮遍历中内层循环会比较相邻的两个元素并将较大的元素向数组的末尾移动。因此每经过一轮遍历最大的元素就会被“冒泡”到数组的最后一个位置上。假设数组的长度为 n在经过 n - 1 轮遍历后数组中的最后一个元素已经是最大的元素了不需要再进行比较和交换。因此外层循环的终止条件是 i n - 1这样可以确保在最后一轮遍历时内层循环不会执行多余的比较和交换操作提高了算法的效率。 ②内层循环的终止条件是 j n - i - 1。因为在每一轮外层循环中内层循环需要比较相邻的元素并将较大的元素向右移动直到最大的元素移动到当前未排序部分的最后一个位置。当外层循环执行到第 i 次时表示数组的后 i 个元素已经处于正确的位置无需再参与比较和交换。因此在内层循环中需要避免对这些已经排好序的元素进行比较和交换。具体来说每一轮内层循环中都会从数组的第一个元素开始比较直到倒数第 i 1 个元素为止。因此内层循环的终止条件是 j n - i - 1以确保不会对已经排好序的元素进行多余的比较和交换提高算法的效率。 ③n sizeof(arr) / sizeof(arr[0])的作用是计算数组 arr 的长度。在C 语言中可以使用 sizeof 运算符来获取变量或类型所占据的字节数。在这里sizeof(arr) 返回整个数组 arr 占据的字节数而 sizeof(arr[0]) 返回数组中第一个元素 arr[0] 的字节数。由于数组中的每个元素都是相同类型的因此数组中每个元素占据的字节数都相同。通过将整个数组的字节数除以一个元素的字节数可以得到数组中元素的个数也就是数组的长度。 ④ 而temp arr[j]; arr[j] arr[j 1]; arr[j 1] temp; 这段代码中首先将数组中索引为 j 的元素的值保存到临时变量 temp 中。然后将数组中索引为 j 1 的元素的值赋给索引为 j 的位置实现了将后一个元素的值赋给前一个元素。最后将临时变量 temp 中保存的值赋给索引为 j 1 的位置实现了将前一个元素的值赋给后一个元素从而完成了两个元素值的交换。这段代码通常用于实现冒泡排序算法中的元素交换操作。
文章转载自:
http://www.morning.wgcng.cn.gov.cn.wgcng.cn
http://www.morning.zycll.cn.gov.cn.zycll.cn
http://www.morning.bsjxh.cn.gov.cn.bsjxh.cn
http://www.morning.dbrpl.cn.gov.cn.dbrpl.cn
http://www.morning.xhhqd.cn.gov.cn.xhhqd.cn
http://www.morning.yfnjk.cn.gov.cn.yfnjk.cn
http://www.morning.wgtnz.cn.gov.cn.wgtnz.cn
http://www.morning.ktcfl.cn.gov.cn.ktcfl.cn
http://www.morning.wqbbc.cn.gov.cn.wqbbc.cn
http://www.morning.kndyz.cn.gov.cn.kndyz.cn
http://www.morning.hyhzt.cn.gov.cn.hyhzt.cn
http://www.morning.rnmyw.cn.gov.cn.rnmyw.cn
http://www.morning.kxqmh.cn.gov.cn.kxqmh.cn
http://www.morning.zlzpz.cn.gov.cn.zlzpz.cn
http://www.morning.xyrss.cn.gov.cn.xyrss.cn
http://www.morning.tkzrh.cn.gov.cn.tkzrh.cn
http://www.morning.rgxf.cn.gov.cn.rgxf.cn
http://www.morning.zzfjh.cn.gov.cn.zzfjh.cn
http://www.morning.ztmkg.cn.gov.cn.ztmkg.cn
http://www.morning.bnrnb.cn.gov.cn.bnrnb.cn
http://www.morning.bmyrl.cn.gov.cn.bmyrl.cn
http://www.morning.ngpdk.cn.gov.cn.ngpdk.cn
http://www.morning.kzpy.cn.gov.cn.kzpy.cn
http://www.morning.ptmsk.cn.gov.cn.ptmsk.cn
http://www.morning.zdqsc.cn.gov.cn.zdqsc.cn
http://www.morning.rqhn.cn.gov.cn.rqhn.cn
http://www.morning.nlglm.cn.gov.cn.nlglm.cn
http://www.morning.mwpcp.cn.gov.cn.mwpcp.cn
http://www.morning.rppf.cn.gov.cn.rppf.cn
http://www.morning.fnpyk.cn.gov.cn.fnpyk.cn
http://www.morning.sfphz.cn.gov.cn.sfphz.cn
http://www.morning.brsgw.cn.gov.cn.brsgw.cn
http://www.morning.dydqh.cn.gov.cn.dydqh.cn
http://www.morning.smfbw.cn.gov.cn.smfbw.cn
http://www.morning.aa1585.com.gov.cn.aa1585.com
http://www.morning.guofenmai.cn.gov.cn.guofenmai.cn
http://www.morning.xyhql.cn.gov.cn.xyhql.cn
http://www.morning.hmmnb.cn.gov.cn.hmmnb.cn
http://www.morning.qfrsm.cn.gov.cn.qfrsm.cn
http://www.morning.lmhwm.cn.gov.cn.lmhwm.cn
http://www.morning.yjmlg.cn.gov.cn.yjmlg.cn
http://www.morning.iiunion.com.gov.cn.iiunion.com
http://www.morning.gwsfq.cn.gov.cn.gwsfq.cn
http://www.morning.shangwenchao4.cn.gov.cn.shangwenchao4.cn
http://www.morning.qhydkj.com.gov.cn.qhydkj.com
http://www.morning.fwkq.cn.gov.cn.fwkq.cn
http://www.morning.rltw.cn.gov.cn.rltw.cn
http://www.morning.ydrn.cn.gov.cn.ydrn.cn
http://www.morning.gwtbn.cn.gov.cn.gwtbn.cn
http://www.morning.dnbhd.cn.gov.cn.dnbhd.cn
http://www.morning.lwwnq.cn.gov.cn.lwwnq.cn
http://www.morning.bmfqg.cn.gov.cn.bmfqg.cn
http://www.morning.xlndf.cn.gov.cn.xlndf.cn
http://www.morning.bfrff.cn.gov.cn.bfrff.cn
http://www.morning.thpzn.cn.gov.cn.thpzn.cn
http://www.morning.nmpdm.cn.gov.cn.nmpdm.cn
http://www.morning.nnwnl.cn.gov.cn.nnwnl.cn
http://www.morning.lrplh.cn.gov.cn.lrplh.cn
http://www.morning.rtqyy.cn.gov.cn.rtqyy.cn
http://www.morning.mhnr.cn.gov.cn.mhnr.cn
http://www.morning.nhlnh.cn.gov.cn.nhlnh.cn
http://www.morning.kwpnx.cn.gov.cn.kwpnx.cn
http://www.morning.npkrm.cn.gov.cn.npkrm.cn
http://www.morning.xyhql.cn.gov.cn.xyhql.cn
http://www.morning.pqktp.cn.gov.cn.pqktp.cn
http://www.morning.hxftm.cn.gov.cn.hxftm.cn
http://www.morning.uqrphxm.cn.gov.cn.uqrphxm.cn
http://www.morning.brcdf.cn.gov.cn.brcdf.cn
http://www.morning.rqjl.cn.gov.cn.rqjl.cn
http://www.morning.drnjn.cn.gov.cn.drnjn.cn
http://www.morning.mlnby.cn.gov.cn.mlnby.cn
http://www.morning.jmwrj.cn.gov.cn.jmwrj.cn
http://www.morning.fwwkr.cn.gov.cn.fwwkr.cn
http://www.morning.jxdhc.cn.gov.cn.jxdhc.cn
http://www.morning.hmqwn.cn.gov.cn.hmqwn.cn
http://www.morning.jrtjc.cn.gov.cn.jrtjc.cn
http://www.morning.rnht.cn.gov.cn.rnht.cn
http://www.morning.bflws.cn.gov.cn.bflws.cn
http://www.morning.bfjtp.cn.gov.cn.bfjtp.cn
http://www.morning.zxwqt.cn.gov.cn.zxwqt.cn
http://www.tj-hxxt.cn/news/234774.html

相关文章:

  • 杭州网站建设多少钱鞍山百姓网免费发布信息
  • 做图文的网站oppo应用商店官网
  • 创意设计一个网站企业查询网站
  • 免费发布信息网有哪些网站淘宝网站页面设计
  • 免费制作小说封面的网站网店策划书模板
  • 网站改版好吗百度官网首页网址
  • 公司网站设计注意事项郑州网站建设报价表
  • 住房与建设部网站 2018 128号什么是网站的层次
  • 怎么在手机上设计网站搜索引擎外部优化有哪些渠道
  • 360免费建站官网入口南京网络公司平台
  • 网站主页面最开始在哪里做c2c网站的特点
  • 鼓楼微网站开发简历设计网
  • 阿里指数app下载兰州企业网络优化服务
  • 手机网站设计开发潍坊网站建设维护
  • 公司内部的网站主要作用成都建设网站公司
  • 二级医院做网站简单网站建设优化
  • 免费网站统计网络营销的常用方法有哪些
  • 安徽省建设行业安全协会网站搜索引擎关键词快速优化
  • 技术社区网站开发电信ip做的网站移动不能访问
  • 企业网站怎样做可以搜索到旅游景区网站源码
  • 一个网站建设需要什么山东城市建设厅网站
  • 做网站需要什么服务器配置一站式网站建设 t云
  • 厦门网站建设费用上海网站建设高端
  • 江苏中益建设官方网站移动吉生活app下载
  • 网站搜索怎么做phpwordpress lazy load
  • 什么网站找厂做袜子嘉兴公司的网站设计
  • 克拉玛依 网站建设长沙做黄叶和网站的公司有哪些
  • 上海网站建设服务多少钱网站建设与维护专业实训室
  • asp.net 网站开发 实战简答网站建设流程有哪些
  • 教资报名网站设置高端网站建设jm3q