直接插入排序,希尔排序,冒牌排序,选择排序基本性能测试
来源:互联网 发布:python编程初学者指南 编辑:程序博客网 时间:2024/05/07 13:18
仅仅是基本的测试,但是也能说明一定问题,
package 排序;public class TestCase{public static void main(String[] args){int[] testarray=GenerateArray.generateArray(50000);BubbleSort.test(testarray, 100);InserSort.test(testarray, 100);InserSort.test1(testarray, 100);InserSort.test2(testarray, 100);ShellSort.test(testarray, 100);选择排序.test(testarray, 100);}}
package 排序;import java.util.Random;public class GenerateArray{public static int[] generateArray(int n){ int[] a=new int[n];Random r=new Random();for(int i=0;i<n;i++){a[i]=r.nextInt(n);}return a;}/** * 默认产生10000个随机数 * @return */public static int[] generateArray(){ int[] a=new int[10000];Random r=new Random();for(int i=0;i<10000;i++){a[i]=r.nextInt(10000);}return a;}}
GenerateArray.generateArray(50000);这段代码表示产生的要排序的数据量(随机生成0-50000)
我把要测试的数据从5 50 500 5000 50000都测试过,基本结论是数据量在500以前的时候效率差不多,
但是数据量增大到5000 50000测试结果相差较大,
总的趋势是:希尔排序最快,直接插入排序居中,冒泡排序,选择排序最慢
控制台打印结果为50000个测试数据进行排序结果,每个算法测试100次,取耗时的平均值
BubbleSort为冒泡排序
InserSort.sort(),InserSort.sort1(),InserSort.sort2()为直接插入排序
ShellSort.sort(()为希尔排序
0 0
- 直接插入排序,希尔排序,冒牌排序,选择排序基本性能测试
- 选择排序 直接插入排序 希尔排序 堆排序
- 冒泡排序 快速排序 选择排序 堆排序 直接插入排序 希尔排序 归并排序
- 直接插入排序 + 希尔排序+ 冒泡排序+ 快速排序 + 直接选择排序 + 堆排序
- 直接插入排序,希尔排序
- 直接插入排序、希尔排序
- 直接插入排序-->希尔排序
- 插入排序-直接插入排序 希尔排序
- 排序算法汇总(选择排序 ,直接插入排序,冒泡排序,希尔排序,快速排序...)
- 排序算法: 冒泡排序, 快速排序,希尔排序,直接插入排序 ,直接选择排序,归并排序,堆排序
- 直接插入 选择 快速 希尔排序 总结
- 直接插入排序、二分插入排序、希尔排序、冒泡排序与简单选择排序
- 常见排序集合(冒泡排序,选择排序,直接插入排序,二分插入排序,快速排序,希尔排序,归并排序)
- 直接插入排序,希尔排序,快速排序
- IOS- 快速排序,冒泡排序,直接插入排序和折半插入排序,希尔排序,堆排序,直接选择排序
- 直接插入排序、冒牌排序(汇编实现)
- 选择排序、插入排序、希尔排序
- 选择排序&插入排序&希尔排序
- 使用VBA解析HTML文档
- 第17周项目23-三色球问题
- 获取详细变更的件数
- 问题定位
- GitLab FAQ
- 直接插入排序,希尔排序,冒牌排序,选择排序基本性能测试
- xml解析-dom(1)
- xml解析-dom(2)
- 加快安装速度
- MFC消息映射机制的理解
- 1. C++ 11之途 - 起航
- Apache的压力测试工具及OB缓存
- php导入csv文件以及碰到乱码解决方法
- Android 带你从源码的角度解析Scroller的滚动实现原理