嗨,我正在使用Mathematica 4.0。我試圖找到所有的排列,例如,說有兩個數字0 & 1.我試圖在3(說)地方使用這兩個數字生成所有排列,重複例如{1,1,1}, {1,1,0},{1,0,1},{1,0,0} ...另外我試圖把每個排列放在一個數組中。 Mathematica 4.0中是否有任何代碼或命令可以用來執行所有這些操作。請幫我完成這項任務...使用mathematica生成排列4.0
回答
在數學5.1及更高版本,有一個函數Tuples
這你想要做什麼。您可以嘗試
getTuples[elements_List, length_Integer] :=
Flatten[Outer[List, Sequence @@ Table[elements, {length}]], length - 1]
例如:
In[6]:= getTuples[{0, 1}, 3]
Out[6]= {{0, 0, 0}, {0, 0, 1}, {0, 1, 0}, {0, 1, 1}, {1, 0, 0}, {1, 0, 1}, {1, 1, 0}, {1, 1, 1}}
但我不知道,如果這個工程在M4.0。應該,我想,但我無法檢查。一般來說,你會面臨很多使用4.0這樣的過時版本的困難,包括缺少功能,性能和接口(前端),較低版本中修復的某些錯誤,與稍後編寫的代碼不兼容版本,並獲得幫助。對於Mathematica來說尤其如此,因爲從4.0開始引入各種方向的巨大進步。所以,如果你打算經常使用它,我強烈建議升級。
考古問題的種類:D。版本4相當老!
<<DiscreteMath`Combinatorica`
perm1[l_,n_]:=Union[KSubsets[Flatten[Table[l,{n}]],n]]
In[70]:= perm1[{1,2,1},4]
Out[70]= {{1,1,1,1},{1,1,1,2},{1,1,2,1},{1,1,2,2},{1,2,1,1},
{1,2,1,2},{1,2,2,1},{1,2,2,2},{2,1,1,1},{2,1,1,2},
{2,1,2,1},{2,1,2,2},{2,2,1,1},{2,2,1,2},{2,2,2,1},{2,2,2,2}}
In[73]:= perm1[{1,0},3]
Out[73]= {{0,0,0},{0,0,1},{0,1,0},{0,1,1},{1,0,0},{1,0,1},{1,1,0},{1,1,1}}
感謝您的迴應。但它不能在Mthma4.0中工作,顯示此結果:在[45]:= perm [n_]:=置換[Flatten [Table [{1,0},{n} ],{N}] 在[46]:= 燙髮[3] 從[46]:= 排列組合:: 「argx」:!「\ \(排列組合\)調用\ \ (2 \)參數; 1 \ 參數是預期的。「 Out [46] = 排列[{1,0,1,0,1,0},{3}] – 2011-01-30 19:12:10
@rajib謝謝。沒有v4文檔是很困難的。我會盡力。 – 2011-01-30 19:21:42
請稍後 - 請注意,所有以前版本的Mathematica的文檔可以在線免費在線獲得,網址爲http://reference.wolfram.com/legacy - 專門用於版本4,請參閱http://reference.wolfram.com/legacy/v4。
您可以通過谷歌搜索V4文檔:
排列的網站:reference.wolfram.com/legacy/v4
它變成了V4的功能置換http://reference.wolfram.com/legacy/v4/RefGuide/Permutations.html其中有例子和一些鏈接到其他舊的Mathematica書的一部分。
- 1. 使用Mathematica生成晶格
- 2. 使用Bitmasking生成排列
- 3. 使用bash生成排列
- 4. 排列生成
- 5. mathematica中的消息生成
- 6. 生成列表的排列
- 7. 如何導入由Mathematica使用Python以列表形式生成的.txt文件
- 8. 使用Mathematica 5.2生成大量置換5.2
- 9. 如何使用Mathematica爲有理數生成多選作業集?
- 10. 如何使用Mathematica生成此操作的動畫GIF?
- 11. 使用Mathematica中的數字範圍排列矩陣9
- 12. 在Mathematica中自動生成總和
- 13. 閱讀Mathematica生成的文本文件
- 14. 如何動態生成mathematica代碼?
- 15. 在Mathematica中迭代生成Sierpinski三角?
- 16. 生成所有列表(排列)
- 17. 在NetLogo中生成列表的排列
- 18. 重排列列生成一個新表
- 19. 從列表框生成排列
- 20. 在Mathematica中重新排序列表
- 21. 如何在mathematica中生成一組不等式列表
- 22. Mathematica - 生成質數達到極限的列表
- 23. Eigensystem排序Wolfram Mathematica
- 24. 生成排版?
- 25. 使用生成器表達式排序()而不是列表
- 26. 基於標識符生成一個特定的排列排列
- 27. 排列生成器函數F#
- 28. 在LINQ中爲n組生成排列
- 29. 從多個字符生成排列
- 30. 在Python中生成唯一的排列
允許我歡迎您來到StackOverflow,並提醒我們通常在這裏做的三件事:1)當您接受幫助時,嘗試給予它**在您的專業領域回答問題** 2)[`閱讀常見問題解答` ](http://tinyurl.com/2vycnvr)3)當你看到好的問答時,把它們投票[`使用灰色三角形](http://i.imgur.com/kygEP.png),作爲可信度該系統的基礎是用戶通過分享知識獲得的聲譽。還請記住接受更好地解決您的問題的答案(如果有的話)['通過按複選標記符號](http://i.imgur.com/uqJeW.png) – 2011-01-30 20:04:08
http://reference.wolfram.com/傳統/ – dbjohn 2011-01-30 20:19:28