看板 PHP 關於我們 聯絡資訊
※ 引述《saininniang (sob)》之銘言: : : 推 chhuang:permutation 12/21 22:36 : 我用recursive寫permutation : 要跑8!= 40320次 : 跑了15分鐘還沒跑完@@ : 比我原本直接用for跑8^8=1600萬次還慢很多 : recursive跑n=6以下,答案一下就出來了 : 但n=7時,就有點慢了 : n=8則是15分鐘都還沒執行完 <?php $n=5; $a=array(); for($i=0;$i<$n;$i++){ $a[$i]=$i+1; } for($i=$n-1;$i>0;$i--){ for($j=$i;$j>=0;$j--){ $a[$i]=$a[$i]+$a[$j]; $a[$j]=$a[$i]-$a[$j]; $a[$i]=$a[$i]-$a[$j]; print_r($a); } } ?> 試了一下 n=50: 0.10664010047913 sec n=60: 0.18252801895142 sec n=100: 0.84918808937073 sec -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.158.15 ※ 編輯: dinos 來自: 140.113.158.15 (12/23 15:45) ※ 編輯: dinos 來自: 140.113.158.15 (12/23 19:43)
chhuang:為什麼你答案數都少了? 也沒有按照 alphabetical order 12/25 12:02
chhuang:n=3: 120 102 201 201 021 (有重複, 而且正確應該有 6 組) 12/25 12:05