我有10個數字的數組。 我想從可用的10中選擇三個數字的所有組合。但是,順序不相關。那就是我不想以不同的順序組合相同的數字(1,2,3產生後2,3,1不應該出現)。此外,數字不應該在組合內重複(即不是1,1,1)。 我知道如何用foreach創建表格,但我一直在如何生成可能的組合。 感謝您的幫助!表中數組的組合
Q
表中數組的組合
3
A
回答
0
一個好方法是使用array_unique()
從陣列中刪除重複項。然後,每次使用元素時,都應該使用array_pop()
將其彈出,以便它不會再次使用。
0
數字不能重複,那麼這是否意味着1,2,1也是不允許的?如果是這樣,作爲第一步,刪除給定集合中的所有重複數字,正如死鎖所暗示的那樣。然後使用算法來查找組合。其他用戶提出的「重複」問題涵蓋了許多此類算法。
0
借款從user187291的回答here,以滿足您的需要進行一些修改,下面應該是你想要的東西:
$a = array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9);
$len = count($a);
$list = array();
for($i = 1; $i < (1 << $len); $i++) {
$c = '';
for($j = 0; $j < $len; $j++)
if($i & (1 << $j))
$c .= ',' . $a[$j];
$list[] = ltrim($c, ',');
}
$answer = array();
foreach ($list as $comb)
{
if (3 == count(explode(',', $comb)))
{
$answer[] = $comb;
}
}
echo '<pre>' . print_r($answer, true);
相關問題
- 1. 數組的組合
- 2. 在Mathematica中組合數組?
- 3. 在VBA中組合數組
- 4. 取消組合分組的表Scala中
- 5. 在整數數組列表中最常見的組合
- 6. C#數組組合
- 7. Python,將列表和數組組合到配對列表中
- 8. 查找數組中的所有組合
- 9. 受限整數組合的組合
- 10. 在類數組中合併數組
- 11. 合併數組對象數組中
- 12. 將多個表單數組組合爲1個數組
- 13. 將兩個小數點列表組合在一個數組中
- 14. 在元組列表中組合元素?
- 15. 組合列表
- 16. 如何將數組數組的數組合併到一個數組中?
- 17. 將數據幀組合到列表中
- 18. Ruby中的數組集合
- 19. C++中的函數組合
- 20. xUnit.NET中的組合數據?
- 21. Clojure中的函數組合?
- 22. Fortran中的函數組合
- 23. 按組中的組合R
- 24. Excel 2010中的數據驗證列表,組合框或活動X組合框?
- 25. 組合兩個數組的函數?
- 26. 組錶行到數組中
- 27. 組合框中的組合框更改事件的參數js
- 28. 值列表中的組合列表?
- 29. Google圖表庫中的組合圖表
- 30. 在JavaScript中組合兩個數組
你能告訴我們組合的一些例子嗎? – 2013-03-06 11:43:10
1,2,3 1,4,3 1,5,3 1,6,3 1,7,3 etc – Duncan 2013-03-06 11:44:52
你的問題不是一個好問題。你的問題沒有顯示任何努力找到答案,你已經嘗試過什麼,或者你想要實現什麼(除了做功課,我的猜測)。 看看建議可能的重複,我確定處理您的確切問題。如果沒有,請解釋原因。 – ExternalUse 2013-03-06 11:51:55