我需要打印從 1 到 99 的隨機數而不重復它們。下面的代碼給了我堆棧溢出。int newNumb= Random.Range(1, 99);if(acum.Count > 0){ while (acum.Contains(newNumb)) { newNumb= Random.Range(1, 99); }}
3 回答

慕桂英546537
TA貢獻1848條經驗 獲得超10個贊
最好的方法是生成所有必要的數字,然后從該列表中拉出直到為空,創建一個新訂單;這通常稱為洗牌。
您當前的代碼花費的時間太長,您需要跟蹤已選擇的數字,并且只能從剩余的數字中進行選擇。在偽代碼中
generate list
while list not empty
choose number from list
remove it from list
add to new list
- 3 回答
- 0 關注
- 140 瀏覽
添加回答
舉報
0/150
提交
取消