zoukankan      html  css  js  c++  java
  • 选择排序法、冒泡排序法、插入排序法、系统提供的底层sort方法排序之毫秒级比较

    我的代码:

    package PlaneGame;
    /**
    * 选择排序法、冒泡排序法、插入排序法、系统提供的底层sort方法排序之毫秒级比较
    * @author Administrator
    */
    import java.util.Arrays;
    public class Newtest {
    public static void main(String[]args){
    int[]arr=new int[10000];
    for(int i=0;i<arr.length;i++){
    int num=(int)(Math.random()*arr.length);
    arr[i]=num;
    }
    System.out.println("排序前:"+Arrays.toString(arr));
    long StartTime=System.currentTimeMillis();
    //冒泡排序法
    /*for(int i=0;i<arr.length-1;i++){
    for(int j=0;j<arr.length-1-i;j++){
    if(arr[j]>arr[j+1]){
    int temp=arr[j+1];
    arr[j+1]=arr[j];
    arr[j]=temp;
    }
    }
    }*/
    //选择排序法
    /*for(int i=0;i<arr.length-1;i++){
    for(int j=i+1;j<arr.length;j++){
    if(arr[i]>arr[j]){
    int temp=arr[i];
    arr[i]=arr[j];
    arr[j]=temp;
    }
    }
    }*/
    //插入排序法
    /*for(int i=1;i<arr.length;i++){
    int temp=arr[i];
    int j;
    for(j=i-1;j>=0;j--){
    if(temp<arr[j]){
    arr[j+1]=arr[j];
    }else{
    break;
    }
    }
    arr[j+1]=temp;
    }*/
    //系统提供的底层sort方法
    //Arrays.sort(arr);
    System.out.println("排序后:"+Arrays.toString(arr));
    long EndTime=System.currentTimeMillis();
    System.out.println("排序消耗的总时间为"+(EndTime-StartTime)+"毫秒");
    }
    }

    结论:理论上和实际上是符合的,插入排序法是自己定义的三大排序法中最快的,当总得来说还是没有作为系统自带的底层来自于C语言的sort方法快。

  • 相关阅读:
    【转】java正则表达式
    NDK学习笔记-使用现有so动态库
    NDK学习笔记-增量更新
    NDK学习笔记-增量更新
    NDK学习笔记-文件的拆分与合并
    NDK学习笔记-文件的拆分与合并
    NDK学习笔记-NDK开发流程
    NDK学习笔记-NDK开发流程
    NDK学习笔记-JNI的引用
    NDK学习笔记-JNI的引用
  • 原文地址:https://www.cnblogs.com/SUN99bk/p/9889067.html
Copyright © 2011-2022 走看看