看板
[ java ]
討論串[問題] 1-42取出6+1個數字
共 21 篇文章
內容預覽:
【 在 zanyking.bbs@ptt.cc (遙遠的旅人) 的大作中提到: 】. 我想這就是洗牌法的延伸吧. 像撲克牌洗牌一樣,假設n張牌一開始都照順序排好 (陣列初始為1~n). 洗一次牌就是任選兩張牌然後彼此交換位置 (陣列中任選2位置彼此Swap值). 要洗幾次就看你想要亂數有多亂,洗越多
(還有105個字)
內容預覽:
從你這一個方法,我倒想到了一個較另類的高效方法 :P. 假設陣列長度 n, 隨機取 m 個. int arr[] = new int[n];. for (int i = 0; i < n; i++) arr[i] = i; // initialize. int result[] = new int[
(還有248個字)
內容預覽:
1-42 取 7用set 的 Contains判斷不取重複可能還好。. 1-20000 取 10000呢?你很快就會覺得是不是掉進無窮回圈當中了。. (如果你不幸用遞迴寫,哪很快就會stack Over Flow了。). 之前Trace JDK程式碼時有看到一個好方法給大家參考。. 原理如下:. 假
(還有157個字)