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

如何自己做网站腾讯关键词在线听免费

如何自己做网站腾讯,关键词在线听免费,一起做网站怎么下单,江苏苏州有什么好玩的冒泡排序是一种简单的排序算法,通过重复遍历要排序的数列,依次比较两个相邻的元素,如果它们的顺序错误则交换它们。这个过程会重复进行,直到没有相邻的元素需要交换,也就是数列已经排序完成。 冒泡排序的名字来源于其工…

        冒泡排序是一种简单的排序算法,通过重复遍历要排序的数列,依次比较两个相邻的元素,如果它们的顺序错误则交换它们。这个过程会重复进行,直到没有相邻的元素需要交换,也就是数列已经排序完成。

        冒泡排序的名字来源于其工作方式,因为较小的元素会像气泡一样逐渐上升到数列的顶端,而较大的元素则会下沉到底部。冒泡排序的时间复杂度为O(n^2),其中n是数列的长度,因此它适用于数据规模较小的情况。然而,当数据规模较大时,冒泡排序的效率会明显下降。此外,冒泡排序是一种稳定的排序算法,因为相等元素的相对位置在排序前后不会改变。

        冒泡排序的基本思想是:每次比较相邻的两个元素,如果它们的顺序不对就交换它们,这样每一轮遍历都会把当前未排序序列中的最大(或最小)元素交换到最后(或最前),直到整个序列有序。

        假设一个序列中共有 n 个元素,那么上面的比较和交换过程一共需要进行 n-1 趟:

        第一趟需要比较序列中的所有元素,它的效果是将整个序列中最大的元素放置到了序列最后一个位置上。

        第二趟只需要比较前面 n-1 个元素,因为前一趟中已经将最大的元素移到了它最终的位置上了。这一趟结束时,整个序列中第二大的元素就被放置到了倒数第二个位置上。

        同样的,第三趟只需要比较前面 n-2 个元素。该趟结束时,序列中第三大的元素就被放到了倒数第三个位置上。

        当进行第 i 趟的时候,需要比较的是前面 n-(i-1) 个元素,因为序列中最大的 i-1 个元素已经在前面的 i-1 趟排序中被排好了。注意,比较 n-(i-1) 个元素需要进行 n-i 次比较。

        当最终到达第 n-1 趟的时候,只需要比较序列中最前面的两个数而已。该趟结束时,序列中第二小的数就被放置到了顺数第二个位置上。同时,序列中最小的数也被放到了第一个位置上。整个排序过程完成。

        从以上对算法原理的讲解中,我们首先可以知道冒泡排序是一种交换排序,它需要进行大量的交换操作。其次,因为当两个元素相等时它们不会被交换,所以相等元素的相对位置在排序前后不会改变,因此冒泡排序又是一种稳定的排序算法

        下面看图理解一下

代码解释:

#include <stdio.h>
int bubble_sort(int arr[],int n) {int i,j,temp=0;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[] = {3,1,6,2,9,0,7,4,5,8};int n = sizeof(arr) / sizeof(arr[0]);  printf("排序前的数组:\n");for (int i = 0; i < n; i++)printf("%d ", arr[i]);printf("\n");  bubble_sort(arr, n);printf("排序后的数组:\n");for (int i = 0; i < n; i++)printf("%d ", arr[i]);printf("\n");return 0;
}

结果:

排序前的数组:
3 1 6 2 9 0 7 4 5 8
排序后的数组:
0 1 2 3 4 5 6 7 8 9
请按任意键继续. . .

        在冒泡排序算法中,内层循环的循环条件需要根据当前轮次的外层循环来确定,以确保只对未排序部分进行比较和交换。

i<n−1:

        这个条件控制了外层循环的执行次数。外层循环的索引 i 从0开始,每次循环递增 1 ,直到i达到 n−1 时停止。这是因为在冒泡排序中,当进行 n−1 轮比较后,所有元素都已经排好序,无需再继续比较。

j<n−i−1:

        这个条件控制了内层循环的执行次数。内层循环的索 j 从 0 开始,每次循环递增 1 ,直到 j 达到 n−i−1 时停止。这是因为在每一轮外层循环中,已经确定了最后 i 个元素的位置,无需再对这些元素进行比较。

http://www.shuangfujiaoyu.com/news/41169.html

相关文章:

  • 有什么做logo网站论坛推广的特点
  • 太原网站排名推广网页制作素材模板
  • 怎么制作一个个人网站生意参谋官网
  • 深圳珠宝网站设计网购网站十大排名
  • cms 导航网站免费建站的网站
  • 网页制作方案策划seo网站推广的主要目的包括
  • 做二手车放在哪个网站好企业网站制作流程
  • 品牌网站的推广b2b和b2c是什么意思
  • 电商网站建设实施方案微信广点通广告平台
  • 天鸿建设集团有限公司 网站互联网营销师证书怎么考多少钱
  • 企业墙面设计珠海seo排名收费
  • 建设商城网站制作营销型网站模板
  • 哪些网站做兼职可靠做网站哪家好
  • 2 试列出网站开发建设的步骤东莞疫情最新通知
  • 大城 网站建设怎么在百度上发布广告
  • seo短视频网页入口引流网站推荐seo的优点和缺点
  • 动态网站构建应用教程百度知道电脑版网页入口
  • 成都建工雅安建设有限责任公司网站教师遭网课入侵直播录屏曝光广场舞
  • 微信公众平台微网站怎么做腾讯云域名注册
  • 怎么做公司网站的手机客户端网站建设知名公司
  • 关于网站建设的介绍百度指数电脑版
  • 做网站主机要选好seo实战培训
  • 建设工程协会网站查询长沙seo行者seo09
  • 网站专业制作杭州seo首页优化软件
  • 网页搜索栏下面的记录怎么删百度seo多少钱一个月
  • 建站快车登陆seo排名优化北京
  • seo网站优化软件seo营销排名
  • 参考消息电子版报纸seo技巧分享
  • 徐城乡建设局网站外贸电商平台哪个网站最好
  • 网站建设企业开发公司app营销模式有哪些