题利用归并排序,几乎和归并排序一样,不同的地方在于将两个有序数组合并的地方需要添加几行代码。
所以我们要找出规律,举例如下:
在归并两排序数组时,当需要将前一个数组元素的指针 i 指向的元素插入时,它对应的 count[i] ,就是后一个数组的指针j 的值
count: 0 0 0 0 0 0 0 0
nums: -7 1 5 9 -2 1 3 5
i j=3
比如此时到了5这个数,它的count就是3 = j,比5小的数的个数就+3
因为在左边数组sub_vec1,已经有序了,所以比5小的数,且在5右边的,也就只能从sub_vec2中找,sub_vec[2],也就是5,和sub_vec[j]比较时,比5小的话,j就会后移,j++,所以就有了上面那条规律。