我只需要知道我应该做什么,以便基本数组填充随机生成的数字。现在我知道该怎么做了,我不知道该怎么做是为了让随机生成的数字大于生成的最后一个数字一直到数组的末尾。
答案 0 :(得分:2)
只为列表生成,然后将它们从最小到最大排序。
for(int i = 0; i < arr.length; ++i) {
arr[i] = Random.nextInt(100);
}
Arrays.sort(arr);
答案 1 :(得分:1)
生成随机数,然后对数组进行排序。
您可以使用Arrays.sort()
它不能确保每个数字都严格大于以前的数字[它只保证<=
],所以如果这是一个问题 - 你必须确保你生成的数字没有欺骗号。
答案 2 :(得分:1)
您可以生成一组随机数,然后使用Array sort对其进行排序。
答案 3 :(得分:1)
对这个问题有一个评论,我丢失了作者的名字,建议将随机生成的数字添加到之前的数字,我认为这是一个有趣的方法。
arr[0] = Random.nextInt(100);
for(int i = 1; i < arr.length; ++i) {
arr[i] = arr[i-1] + Random.nextInt(100);
}
这样就无需对结果数组进行排序。
答案 4 :(得分:0)
您可以拥有自己的生成增量算法...
例如......
每次随机并将该数字添加到最后一个:)
java中的 Random
类不允许你有一个最小限制从哪里开始......只有一个......
例如:
myArray[0] = Random.nextInt(10000);
for(int i=1; i<myArray.length; i++)
{
myArray[i] = myArray[i-1]+Random.nextInt(10000);
}
所以..它是随机的,你不必对它进行排序......试着保持一切简单...
答案 5 :(得分:0)
我感到惊讶没有人提到我们可以使用SecureRandom
API轻松生成随机数组而无需手动填充。
对于ex。生成大小为100
的随机数组:
SecureRandom random = new SecureRandom();
int arr[] = random.ints(100).toArray();
BTW应该可以从 java 8 开始。