有一个整数数组,数组长度为10万,整数的范围位于3到900之间,请用Java实现时间复杂度尽可能低的排序算法(假设内存空间足够大)

Posted 刘成成

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有一个整数数组,数组长度为10万,整数的范围位于3到900之间,请用Java实现时间复杂度尽可能低的排序算法(假设内存空间足够大)相关的知识,希望对你有一定的参考价值。

 1 package Test;
 2 
 3 import java.util.ArrayList;
 4 import java.util.List;
 5 import java.util.Random;
 6 
 7 public class test  {
 8     /**
 9      * 有一个整数数组,数组长度为10万,整数的范围位于3到900之间,请用Java实现时间复杂度尽可能低的排序算法(假设内存空间足够大)
10      * @param args
11      */
12     public static void main(String[] args)  {
13         Random rand=new Random();
14         int max=900;
15         int min=3;
16         int arr[]=new int[10000];
17         List list=new ArrayList<>();
18         //生成数组
19         for(int i=0;i<10000;i++){
20             arr[i]=rand.nextInt(max)%(max-min+1)+min;
21             list.add(arr[i]);
22         }
23         list.sort(null);
24     }
25 }

 

以上是关于有一个整数数组,数组长度为10万,整数的范围位于3到900之间,请用Java实现时间复杂度尽可能低的排序算法(假设内存空间足够大)的主要内容,如果未能解决你的问题,请参考以下文章

生成一个长度为10的整数数组,数组中每个元素都不同(数组中值的范围为1~20)

在数组中搜索特定范围内的整数

排序算法计数排序

排序算法计数排序

随机生成指定范围内的随机数,放在指定长度的数组内

如何在整数数组中查找所有有序元素对,其总和位于给定的值范围内