隨機生成的數字我只需要知道我應該怎麼做才能讓這樣一個基本陣列充滿隨機生成的數字。現在我知道如何做到這一點,我不知道該怎麼做是爲了讓隨機生成的數字比最後一次生成的數字大到數組的末尾。在基本陣列
在基本陣列
回答
產生隨機數,然後對數組進行排序。
可以使用Arrays.sort()
它不確保每個數字是嚴格更大然後是以前的編號[它只註冊就<=
],因此,如果它是一個問題的數組進行排序 - 你必須確保你在生成的數字中沒有愚蠢行爲。
您可以生成一個隨機數組,然後使用Array sort對其進行排序。
只需爲列表生成,然後按最小排序即可。
for(int i = 0; i < arr.length; ++i) {
arr[i] = Random.nextInt(100);
}
Arrays.sort(arr);
你可以有你自己產生增量的算法...
例如...
每次隨機並添加號碼到最後一個:)
Random
在java類不允許你有一個最小限制從哪裏開始..只有一個...
例如:
myArray[0] = Random.nextInt(10000);
for(int i=1; i<myArray.length; i++)
{
myArray[i] = myArray[i-1]+Random.nextInt(10000);
}
所以..它是隨機的,您不必對它進行排序..嘗試藏在心裏簡單...
請注意,它可能因[overflow](http://en.wikipedia.org/wiki/Arithmetic_overflow)而失敗。 – amit 2012-02-24 20:36:13
如果他有一個長度爲2000000的數組..是的:)如果只有1000 ..不! :) – Alex 2012-02-24 20:42:33
(1)當你使用'nextInt(10000)'時,你無限制地限制自己。你可以用4填充它。 (2)當數組大小爲〜200000 [零減1]時可能會溢出。無論如何,OP使用這個解決方案時只需要考慮一點。 – amit 2012-02-24 20:45:36
有關於這個問題的評論,我失去了作者的名字,即建議增加隨機生成的數字與之前的數字,我認爲這是一個有趣的方法。
arr[0] = Random.nextInt(100);
for(int i = 1; i < arr.length; ++i) {
arr[i] = arr[i-1] + Random.nextInt(100);
}
這不需要對結果數組進行排序。
- 1. java基本陣列問題
- 2. 基本c#陣列打印
- 3. PHP - 基本陣列合併
- 4. 骨料陣列基本
- 5. 基本矩陣的基本矩陣
- 6. 基於陣列
- 7. 陣列基或
- 8. 基於陣列
- 9. angularJS第二陣列的更新陣列基本值
- 10. 基本java:掃描文件,陣列
- 11. 骨料陣列基本參數
- 12. 基本的C++的原子陣列
- 13. 陣列反射基本任務
- 14. VB腳本(VBS)陣列基準
- 15. 樣本從陣列元素的基地
- 16. 多維PHP陣列的基本排序
- 17. MIPS ADDI指令陣列基本
- 18. 基本陣列比較算法
- 19. 排序陣列基於陣列值
- 20. 率陣列基於陣列值
- 21. 陣列內的基因敲除陣列
- 22. 基於另一個陣列的陣列
- 23. 基於PHP陣列
- 24. PHP陣列基準
- 25. 矩陣和陣列背後的基本原理是什麼?
- 26. 在另一個陣列的基礎上過濾一個陣列
- 27. 提取從陣列和基團在PHP陣列
- 28. 在另一個陣列的基礎中對陣列排序
- 29. 基本矩陣相機矩陣
- 30. 基本矩陣的投影矩陣
是的,現在當我去我的驅動程序類,以顯示與S.O.P.數組我在arr [i] = gen.nextInt(10000)上得到運行時錯誤;我不知道爲什麼要這樣做。我設置ARR [I] = gen.nextInt(10000)到名爲值的變量,它是一個Int – Tigh 2012-02-25 04:45:31
@Tigh你需要表現出更多的代碼,並添加一個堆棧跟蹤。請編輯你的問題,或者更好地問一個新問題以獲得更多關注。 – dasblinkenlight 2012-02-25 11:14:48