首页 > 解决方案 > 无法理解合并排序算法中的倒数计数(C#,算法)

问题描述

我在理解使用合并排序算法(https://gist.github.com/dvorobiov/2038501)计算反转的过程时遇到了问题。在第 43 行,

inversions += leftList.Count - i;

为什么不做

inversions++

标签: c#algorithm

解决方案


此行在 时执行(leftList[i] > rightList[j])

这个事实意味着它rightList[j]小于所有正确的部分leftlist- 所以这种情况揭示了leftList.Count - i新的倒置


推荐阅读