這個問題的拼詞已被轉移到Mathematics Stack Exchange和Computational Science Stack Exchange。在這些其他網站上可能會找到其他答案。在Matlab中有內置函數來確定置換是偶數還是奇數?
此問題與Getting the mapping for a permutation in MATLAB有關。標題基本概括了所有內容。我想知道在Matlab中是否有內置函數用於確定由矢量表示的置換是偶數還是奇數。例如,[2 1 4 3 5]是身份置換[1 2 3 4 5]的偶數置換,因爲它需要偶數次交換才能從一個向量到另一個向量。這似乎是人們可能想要經常做的事情,並且可能有內置功能。人們已經在網上發佈了相當長的Matlab文件來完成這個任務。如果我可以讓Matlab給我一個排列矩陣,那麼我可以採取該矩陣的行列式,但我還沒有想出如何做到這一點,我也不知道是否有一個快速的方法。
太棒了!我從未使用過「speye」。 Computational Science Stack Exchange Beta上的某人發佈了一個稍微長一些的需要for循環的解決方案。 – 2013-05-03 13:28:26
speye對這個例子沒有多大用處,但是如果你的維度很高,而且你在稀疏域中工作,那麼它非常方便。 – 2013-05-03 14:12:55
另一個答案使用了「eye」和「numel」,看起來基本相同。我曾使用過:但從來沒有像這樣。有些Matlab工作人員正在研究如何工作。 – 2013-05-03 17:29:06