Re: [問題] 隨機排序的問題

看板Fortran作者 (sjgau)時間15年前 (2009/10/21 09:38), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串8/8 (看更多)
初步看,好像 M大大的方法比較好。 我會仔細的再 評估看看。 我的排列,組合,機率,演算法 BIGO 估算, 學的都不是很靈光, 我會再加油! 這個方法,可以用在 很多地方。 例如,1 到 42 取五個 亂數,不重複。 還有 這邊的洗牌的動作,等等。。。 ※ 引述《mantour (朱子)》之銘言: : 為什麼要洗這麼多次呀 : 這樣應該就可以了吧 : ! a(0) ~ a(51) : for i=0,50 : 產生一個 i ~ 51 的亂數 : swap(a(r), a(i)) : 想像成本來是52個人坐一排 : 然後重抽一輪新的座號 : ※ 引述《sjgau (sjgau)》之銘言: : : 你的意思,應該是 隨機洗牌。 : : 假設你原本的資料有 52筆, : : 存放在 一個 一維陣列 : : integer a(52) : : ! a(1) . . . a(52) : : for i=1 to 300 do : : ! 隨機產生兩個 亂數 n1, n2, >= 1, and <= 52 : : ! 交換 a(n1) 和 a(n2) 的值 : : end do -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.231.104.108
文章代碼(AID): #1AtcOSMv (Fortran)
文章代碼(AID): #1AtcOSMv (Fortran)