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

哪个网站帮别人做ppt不用下载能直接进入的正能量网站

哪个网站帮别人做ppt,不用下载能直接进入的正能量网站,网站架构 规划,用于公司网站建设的费用记帐分录目录 1.冒泡排序的思想 2.冒泡排序的实现 3.冒泡排序的总结 1.冒泡排序的思想 冒泡排序的思想就是在待排序序列中依次比较相邻两个元素,将大的or小的元素往后挪,每一趟都能保证将至少一个元素挪动到正确的位置,然后在待排序序列中重复该过…

目录

1.冒泡排序的思想

2.冒泡排序的实现

3.冒泡排序的总结


1.冒泡排序的思想

冒泡排序的思想就是在待排序序列中依次比较相邻两个元素将大的or小的元素往后挪,每一趟都能保证将至少一个元素挪动到正确的位置,然后在待排序序列中重复该过程

2.冒泡排序的实现

代码如下:

void BubbleSort(int* a, int n)
{for (int j = 0; j < n; j++)  //枚举结束位置和最后一个元素位置的差值 {for (int i = 1; i < n-j; i++) //依次枚举相邻的两个元素 {if (a[i - 1] > a[i]){swap(&a[i - 1], &a[i]);}}}
}

可以看出,冒泡排序十分的暴力,枚举的次数在最好和最坏情况下都是一个等差数列,但是,有些比较是没有必要的。比如:当某一趟排序中没有发生交换的时候,说明序列有序了,不需要再比较了,所以我们可以对代码进行优化。

优化之后的代码如下:

  • 我们可以增加一个标记位,标记是否发生了交换。
#include <stdio.h>void swap(int* p1, int *p2)
{int t = *p1;*p1 = *p2;*p2 = t;
}void BubbleSort(int* a, int n)
{for (int j = 0; j < n; j++)  //枚举结束位置和最后一个元素位置的差值 {int flag = 0;for (int i = 1; i < n-j; i++) //依次枚举相邻的两个元素 {if (a[i - 1] > a[i]){swap(&a[i - 1], &a[i]);flag = 1;}}if (flag == 0){break;}}
}int main()
{int nums[] = {5,4,2,6,3,1,8,9,7};BubbleSort(nums, 10);int i = 0;while(i < sizeof(nums)/sizeof(int)){printf("%d ",nums[i]);i++;}return 0;
}

3.冒泡排序的总结

  • 时间复杂度:O(N^2)。
  • 空间复杂度:O(1)。
  • 稳定性:稳定 。
http://www.yayakq.cn/news/841633/

相关文章:

  • 做红木家具推广哪个网站比较好企业网站建设的缺点
  • seo网站设计点击软件html怎么做静态网站
  • 专业做衬衫哪个网站舟山网站建设开发
  • 做专题页的背景网站展览会建设网站平台的作用
  • 怎么设置iis默认网站免费域名注册地址
  • wordpress人型图标seo站内优化包括
  • 自己做网站平台个人装修接活群
  • 制作网站公司定价郑州网站建设乙汉狮网络
  • 自己做视频网站动易网站栏目
  • 达州高端网站建设阿里巴巴外贸订单网站
  • php网站开发实例教程实验报告广州镭拓科技网站建设公司
  • 国际交流网站建设方案小升初最好的补课机构排行榜
  • 怎么做辅助发卡网站网站建设与管理淘宝
  • 网站备案编号查询遵义做网站哪个公司最好
  • 受欢迎的集团网站建设重庆网站建设流程
  • 想学Wordpress建站wordpress能做企业站吗
  • 重庆做营销网站做网站需要什么硬件环境
  • 网站问题分析官方网站建设银行年利息是多少
  • 网站建设简历网页qq直接登陆
  • 网站制作公司源码深圳品牌vi设计
  • 小企业网站建设费用一年如何免费建立自己的网站
  • 学校网站建设介绍范文河南秋实网站建设
  • 免费的个人网站注册wordpress数据库路径
  • 郑州专业做网站公司网站首页关键字方案
  • 赤壁专业建站公司贵州住房与城乡建设部网站
  • 怎么样才能让百度收录自己的网站做富集的网站
  • flash网站模板源码聊城集团网站建设公司
  • 温州网站设计服务家装网上怎么接单啊
  • 学校网站建设维护投标方案马关网站建设
  • 网站建设申请域名python做的知名网站