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

呼和浩特公司网站制作展厅设计案例

呼和浩特公司网站制作,展厅设计案例,内乡网站建设,京东网上商城创立时间文章目录 前言1. 排序算法的复杂度及稳定性分析2. 排序算法的性能测试2.1 重复率较低的随机值排序测试2.2 重复率较高的随机值排序测试 前言 本篇是基于我这几篇博客做的一个总结#xff1a; 《简单排序》#xff08;含#xff1a;冒泡排序#xff0c;直接插入排序#x… 文章目录 前言1. 排序算法的复杂度及稳定性分析2. 排序算法的性能测试2.1 重复率较低的随机值排序测试2.2 重复率较高的随机值排序测试 前言 本篇是基于我这几篇博客做的一个总结 《简单排序》含冒泡排序直接插入排序选择排序计数排序《希尔排序》《堆排序》《快速排序》《归并排序》 我会再对他们的时间复杂度、空间复杂度以及稳定性再做一次总结并且在不同的场景下测试他们的性能怎么样。 1. 排序算法的复杂度及稳定性分析 排序方法平均情况最好情况最坏情况辅助空间稳定性冒泡排序 O O O( N N N2) O O O( N N N) O O O( N N N2) O O O( 1 1 1)稳定选择排序 O O O( N N N2) O O O( N N N2) O O O( N N N2) O O O( 1 1 1)不稳定直接插入排序 O O O( N N N2) O O O( N N N) O O O( N N N2) O O O( 1 1 1)稳定计数排序 O O O( N r a n g e Nrange Nrange) O O O( N N N) O O O( N r a n g e Nrange Nrange) O O O( r a n g e range range)—希尔排序 O O O( N ∗ l o g N N*logN N∗logN) ~ O O O( N N N2) O O O( N N N1.3) O O O( N N N2) O O O( 1 1 1)不稳定堆排序 O O O( N ∗ l o g N N*logN N∗logN) O O O( N ∗ l o g N N*logN N∗logN) O O O( N ∗ l o g N N*logN N∗logN) O O O( 1 1 1)不稳定归并排序 O O O( N ∗ l o g N N*logN N∗logN) O O O( N ∗ l o g N N*logN N∗logN) O O O( N ∗ l o g N N*logN N∗logN) O O O( N N N)稳定快速排序 O O O( N ∗ l o g N N*logN N∗logN) O O O( N ∗ l o g N N*logN N∗logN) O O O( N N N2) O O O( l o g N logN logN) ~ O O O( N N N)不稳定 2. 排序算法的性能测试 ⚠️我这里只是测试一遍的结果截图目的是让大家看看判断一个排序的优劣需要不同场景下的大量测试。 我们比较排序时应该换成release版本来测试这样性能才会全部拉满 先写一段测试代码 // 测试排序的性能对比 // 测试排序的性能对比 void TestOP() {srand(time(0));const int N 100000; // 十万个数的比较int* a1 (int*)malloc(sizeof(int) * N);int* a2 (int*)malloc(sizeof(int) * N);int* a3 (int*)malloc(sizeof(int) * N);int* a4 (int*)malloc(sizeof(int) * N);int* a5 (int*)malloc(sizeof(int) * N);int* a6 (int*)malloc(sizeof(int) * N);int* a7 (int*)malloc(sizeof(int) * N);int* a8 (int*)malloc(sizeof(int) * N);for (int i 0; i N; i){a1[i] rand() i; // 生成十万个重复率低的随机值//a1[i] rand() % 100; // 生成十万个重复率高的随机值a2[i] a1[i];a3[i] a1[i];a4[i] a1[i];a5[i] a1[i];a6[i] a1[i];a7[i] a1[i];a8[i] a1[i];}int begin1 clock();InsertSort(a1, N);int end1 clock();int begin2 clock();SelectSort(a2, N);int end2 clock();int begin3 clock();ShellSort(a3, N);int end3 clock();int begin4 clock();HeapSort(a4, N);int end4 clock();int begin5 clock();QuickSort(a5, 0, N);int end5 clock();int begin6 clock();MergeSort(a6, N);int end6 clock();int begin7 clock();QuickSortNonR(a7, 0, N);int end7 clock();int begin8 clock();MergeSortNonR(a8, N);int end8 clock();printf(InsertSort:%d\n, end1 - begin1);printf(SelectSort:%d\n, end2 - begin2);printf(ShellSort:%d\n, end3 - begin3);printf(HeapSort:%d\n, end4 - begin4);printf(QuickSort:%d\n, end5 - begin5);printf(MergeSort:%d\n, end6 - begin6);printf(QuickSortNonR:%d\n, end7 - begin7);printf(MergeSortNonR:%d\n, end8 - begin8);free(a1);free(a2);free(a3);free(a4);free(a5);free(a6); }int main() {srand((unsigned)time(NULL)); // 生成随机数种子TestOP();return 0; }2.1 重复率较低的随机值排序测试 可以看到直接插入排序在比较低阶的排序算法中算是很优秀的一个排序了。 我们继续加大数据但是我得把效率比较低的排序关掉单独来比那些比较高阶的排序 2.2 重复率较高的随机值排序测试 直接看结果 继续加大数据把效率比较低的排序关掉单独来比那些比较高阶的排序
http://www.zqtcl.cn/news/258144/

相关文章:

  • 网站建设需要什么工具投诉百度最有效的电话
  • 做家政网站公司策划公司英文
  • 自己建设个人网站要花费多少自己怎么制作微信网页链接
  • 邢台网站设计哪家专业php图书管理系统网站开发
  • 怎么去建一个网站艺术设计专业
  • 中国优秀设计网站有哪些内容万能影视免费观看app
  • 网站做响应式还是移动端广告创意设计模板
  • 企业网站建设的要求标准营销型网站定做价格
  • 兰溪优秀高端网站设计郑州正规网站制作公司
  • 霸气业务网站源码网站建设运营服务公司
  • 做seo对网站推广有什么作用网站开发程序流程图
  • 旅游网站怎么建设网站开发+搜索
  • 三分钟做网站传统企业建设营销型网站
  • 必须在当地网站备案化妆品做备案的网站
  • 网站建设7个主要流程图创建全国文明城市工作要求
  • 张店网站开发招聘怎样做网站变手机软件
  • 聊城做网站的公司流程网页设计网站模板
  • 宿迁网站建设哪家专业做网站宁夏
  • 静态网站规范贵州城乡建设厅施工员报名网站
  • 湖北长安建设集团股份有限公司网站wordpress主题套用
  • 本地门户网站系统小米应用商店
  • 网站建设怎么用宁波建设网网点
  • 购物网站二级页面模板国家企业信用公示信息系统官网app
  • tp框架做餐饮网站快速建站教程网
  • php自己做网站wordpress下拉刷新
  • 怎么提高网站收录量专业网站优化公司
  • 重庆建站费用素材最多的网站
  • 银联支付网站建设html5网站模板
  • iis建好的网站套用模板上海网站建设 迈若
  • 无限极企业微信app下载安装网站改版seo