zoukankan      html  css  js  c++  java
  • 排序优化

    //排序减少对堆内存的访问以实现优化

    package com.hz.io.demo1;

    public class IOTest {
    static File f = new File("a.txt");
    public static void main(String[] args) {
    long start = System.currentTimeMillis();
    m5(20000);
    long stop = System.currentTimeMillis();
    System.out.println(" ===");
    System.out.println(stop-start);//872 895 897 //186 202 194
    }
    //排序优化后
    static void m5(int n){
    int[] arr = new int[n];
    for(int i=0; i<n; i++){
    arr[i] = (int) (n*Math.random());//随机生成n个元素的数组
    System.out.print(arr[i]+" * ");
    }
    //选择排序优化:减少堆内存的访问
    for(int i=0; i<arr.length-1; i++){
    int num = arr[i];
    int index = i;
    for(int j=i+1; j<arr.length; j++){
    if(num>arr[j]){
    num=arr[j];
    index=j;
    }
    }
    if(index!=i){
    int temp = arr[i];
    arr[i] = arr[index];
    arr[index] = temp;
    }
    }
    //遍历数组
    for(int x:arr){
    System.out.print(x+"-");
    }
    }
    static void m4(int n){//排序时间测试
    int[] arr = new int[n];
    for(int i=0; i<n; i++){
    arr[i] = (int) (n*Math.random());//随机生成n个元素的数组
    System.out.print(arr[i]+" * ");
    }
    //选择排序
    for(int i=0; i<arr.length-1; i++){
    for(int j=i+1; j<arr.length; j++){
    if(arr[i]>arr[j]){
    arr[i]^=arr[j];
    arr[j]^=arr[i];
    arr[i]^=arr[j];
    }
    }
    }
    //遍历数组
    for(int x:arr){
    System.out.print(x+"-");
    }
    }

    }//main

  • 相关阅读:
    ROI选取
    大脑基底神经节
    毕业进度
    雅思8分大神叫你如何学习口语
    北京共有多少个区?_北京城中区是什么?城郊区是什么?
    功能连接分析中fisher-zsocre
    granger--platform_beta测试
    可买房摇号,北京市工作居住证全面解读
    2015年北京户口全攻略
    找实习
  • 原文地址:https://www.cnblogs.com/geryhz/p/14335949.html
Copyright © 2011-2022 走看看