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

婚庆网站建设方案广州最新政策

婚庆网站建设方案,广州最新政策,江苏网站建设南通,app一般用什么开发选择排序 和 堆排序 一、选择排序选择排序的思路及其代码选择排序的弊端 二、堆排序三、速度对比同时排10000个数同时排100000个数同时拍500000个数堆排 1 亿个数 一、选择排序 选择排序的思路及其代码 选择排序思路很简单 就是经过将数组遍历选择最小值 将最小值位置的数与数…

选择排序 和 堆排序

  • 一、选择排序
    • 选择排序的思路及其代码
    • 选择排序的弊端
  • 二、堆排序
  • 三、速度对比
    • 同时排10000个数
    • 同时排100000个数
    • 同时拍500000个数
    • 堆排 1 亿个数

一、选择排序

选择排序的思路及其代码

选择排序思路很简单
就是经过将数组遍历选择最小值
将最小值位置的数与数组最前面位置的数进行交换
如此反复,完成排序
在这里插入图片描述

为了提高效率我们在一次遍历过程中同时找最大和最小值
代码如下:

//选择排序
void SelectSort(int* a, int n)
{int maxi = n - 1;int mini = 0;while (mini < maxi){//找出最大最小值的下标int max = maxi;int min = mini;for (int i = mini; i <= maxi; i++){if (a[i] > a[max]){max = i;}if (a[i] < a[min]){min = i;}}//将最大最小值进行更新,将最大最小值放到数组两边Swap(&a[mini], &a[min]);//若最大值在原最小值的位置,将位置更新if (max == mini){max = min;}Swap(&a[maxi], &a[max]);maxi--;mini++;}
}

运行结果:
在这里插入图片描述

选择排序的弊端

因为无论数组中原数组是如何排列
选择排序都要遍历数组
所以它的最好与最坏的情况下
时间复杂度都是 O(N ^ 2)
效率低下,正常情况下是不会使用这个排序的

二、堆排序

以下的链接又对堆和堆排序的讲解:
堆以及堆排序

下面我就直接把代码贴出来:

//向下调整(建大堆)
void AdjustDown(int* a, int parent, int n)
{//左孩子int child = parent * 2 + 1;while (child + 1 < n){//先找左右孩子中大的一个if (child + 1 < n && a[child] < a[child + 1]){child++;}//将父亲节点与孩子节点进行比较,将大的移到父亲节点if (a[parent] < a[child]){Swap(&a[parent], &a[child]);parent = child;child = parent * 2 + 1;}else{break;}}
}//堆排序
void HeapSort(int* a, int n)
{//向下调整建堆for (int i = (n - 1 - 1) / 2; i >= 0; i--){AdjustDown(a, i, n);}//进行堆排序int size = n - 1;while (size > 0){//先将堆的第一个数与最后一个数交换Swap(&a[0], &a[size--]);//向下调整AdjustDown(a, 0, size);}
}

运行结果:
在这里插入图片描述
堆排序的时间复杂度为 O(N * logN)

三、速度对比

同时排10000个数

在这里插入图片描述

同时排100000个数

在这里插入图片描述

同时拍500000个数

在这里插入图片描述
排序到这里选择排序就已经非常慢了
我们笔记本是 i9 的 cpu 配置还算可以
跑的时候风扇已经呜呜转了

堆排 1 亿个数

在这里插入图片描述

http://www.yidumall.com/news/26751.html

相关文章:

  • 深圳网站建设开发公司广东企业网站seo报价
  • 二级网站建设 管理思路百度云搜索引擎入口 百度网盘
  • 扬州哪家公司做网站比较好怎么进行seo
  • 品牌营销优化东莞seo网络公司
  • 腾讯云服务器搭建教程郑州seo阿伟
  • 英文网站建设教程搜索引擎优化seo培训
  • wordpress 传值seo含义
  • 泉州做外贸网站百度关键词指数排行
  • 做带字头像的网站手机网站建设
  • 聊城做网站的公司价位新闻头条最新消息国家大事
  • 网站开发如何设置视频指数基金定投怎么买
  • 枣庄专业三合一网站开发百度官方
  • 4大门户网站百度学术官网入口
  • 建设部设计院网站湖南优化推广
  • 网站制作产品优化南宁网站推广排名
  • 网站策划怎么样宁波seo排名费用
  • 北京市建设工程招标网站推广方案流程
  • coding免费搭建wordpress深圳纯手工seo
  • 制作网站复杂吗营销型网站优化
  • 常州网站建设czyzj济南seo整站优化招商电话
  • asp. net 做网站公司网络营销推广软件
  • 浙江网站建设价格盐城seo优化
  • 国外优秀flash网站软文发稿公司
  • 重庆网站推做公司网页
  • 龙华做网站公司24小时网站建设
  • 唐山做网站多少钱东莞网络营销公司
  • 备案网站名称大全百度搜索引擎首页
  • 免费做的网站怎么设置域名解析5000元做百度推广效果怎么样
  • 龙江网站设计网络营销和网络销售的关系
  • 网站制作方案介绍及要求seo顾问公司