逆序数的定义网上有很多,也很容易理解。至于逆序数的统计方法,有两种比较主流,一种是通过归并排序,在归并的过程中统计逆序数。还有一种就是通过二叉查找树逆序数就增加它的父节点+该父节点右孩子的数量,所以在建立二叉查找树时需要记录右孩子的数量,方法是这样,首先将所有元素都初始化为一个节点,节点中有一个值代表右侧孩子结点数量+1,一开始都为1。每次插入一个右孩子,该值就增加1。每插入一个左孩子,逆序数就加上这个值。可能说的有点不太清楚,暂时这样吧。看看代码就清楚了。代码也有点乱:
这个是PKU 1804,最容易的关于逆序数的题目