博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
快速排序、冒泡排序
阅读量:4879 次
发布时间:2019-06-11

本文共 1113 字,大约阅读时间需要 3 分钟。

我目前最常用的两种排序:冒泡排序和快速排序

比较一下他们的性能:

1 #include
2 3 void QuickSort(int * a,int left,int right) 4 { 5 if(left>right) 6 { 7 return; 8 } 9 int stand=a[left];10 int i=left;11 int j=right;12 //得到基准数位置 13 while(i!=j)14 {15 while(i
=stand)16 {17 --j;18 }19 while(i
<=stand)20 {21 ++i;22 }23 if(i
a[j+1])46 {47 int temp=a[j];48 a[j]=a[j+1];49 a[j+1]=temp;50 }51 }52 }53 }54 55 int main()56 {57 int * a=new int[10000];58 for(int i=0;i<10000;i++)59 {60 a[i]=10000-i;61 }62 QuickSort(a,0,9999);63 //BubbleSort(a,9999);64 /* for(int i=0;i<10000;i++)65 {66 printf("%d\n",a[i]);67 } */68 return 0;69 }

运行结果显示:

在数据量较小时冒泡排序和快速排序性能差不多,冒泡有时性能还会更高些,可能是因为快排用的递归要函数出入栈的原因。。。。。。

但随着数据量的增大,快速排序的性能会比冒泡高得多。

数组长度为10000时排序耗时(以最复杂情况测试)

快速排序:

冒泡排序:

转载于:https://www.cnblogs.com/flypie/p/4926028.html

你可能感兴趣的文章
mata属性
查看>>
OpenCV学习(1)——初步接触
查看>>
java泛型反射总结
查看>>
20135202闫佳歆-期中总结
查看>>
比特币入门
查看>>
Lucene教程
查看>>
http post 接口
查看>>
Python Cookbook(第2版)中文版
查看>>
Codeforces 980E The Number Games 贪心 倍增表
查看>>
省市区三级联动(二)JS部分简单版
查看>>
如何撰写总体设计与详细设计文档
查看>>
php开启openssl的方法,openssl安装
查看>>
集合类转化成数组
查看>>
什么是Java 虚拟机?为什么Java 被称作是"平台无关的编程语言"?
查看>>
better-scroll和swiper使用中的坑
查看>>
css之字体的引用
查看>>
oo第一单元博客
查看>>
实验报告三
查看>>
基础搜索
查看>>
vs2008 C# 怎么调试C++ dll[转]
查看>>