首页 > 代码库 > 一个数组中有65535个数不重复的大于0的整数(即:0~~65535内所有不重复的整数,数序是杂乱无章的), 用最快的方式排序

一个数组中有65535个数不重复的大于0的整数(即:0~~65535内所有不重复的整数,数序是杂乱无章的), 用最快的方式排序

备注:如果这个问题你考虑到用元素对比就大错特错了

当然这个算法还不是最优的,不能代表普遍性。但可以引申,总体还是这个思路,无非就是“填空”操作

 

public class OrderLink {    /**     * 一个数组中有65535个数不重复的大于0的整数(即:0~~65535内所有不重复的整数,数序是杂乱无章的),     * 用最快的方式排序     * @param args     */    public static void main(String[] args) {        //例如:一个数组中有65535个数不重复的大于0的整数        int[] prel = new int[]{2,4,9,5,3,6,7,8,11,1,12,0,10};        int[] endl = oderBysel(prel);        for(int i:endl){            System.out.print(i + " < ");        }    }        //排序方法    private static int[] oderBysel(int[] in){        int[] inl = new int[in.length];        for(int i=0;i<in.length;i++){            inl[(int)in[i]] = in[i];        }        return inl;    }}

 

一个数组中有65535个数不重复的大于0的整数(即:0~~65535内所有不重复的整数,数序是杂乱无章的), 用最快的方式排序