在python的numpy库里没有找到关于生成排列的部分,也没有计算排列逆序数的方法,于是自己写了一个两个函数。
第一个函数,使用了深度搜索的方法。关于深度搜索方法,可以看我以前的文章。
ruby实现算法 深度优化搜索算法实现全排列
ruby实现算法10 深度搜索 拯救公主
以下是用python实现的代码:
关于这段代码,注释已经比较详细了,此处不再赘述。
接下来是计算逆序数的方法:
这种算法十分简单,就跟我们自己计算的方法是一样的。
我们在进行一下验证:
我们来看执行情况:
在使用的时候,我们可以把这个库引进当前代码。
,