python與線性代數 全排列和逆序數計算方法

在python的numpy庫裡沒有找到關於生成排列的部分,也沒有計算排列逆序數的方法,於是自己寫了一個兩個函數。

第一個函數,使用了深度搜索的方法。關於深度搜索方法,可以看我以前的文章。


以下是用python實現的代碼:

python與線性代數 全排列和逆序數計算方法

關於這段代碼,註釋已經比較詳細了,此處不再贅述。

接下來是計算逆序數的方法:

python與線性代數 全排列和逆序數計算方法

這種算法十分簡單,就跟我們自己計算的方法是一樣的。

我們在進行一下驗證:

python與線性代數 全排列和逆序數計算方法

我們來看執行情況:

python與線性代數 全排列和逆序數計算方法

在使用的時候,我們可以把這個庫引進當前代碼。


分享到:


相關文章: