二分法习题

力扣4、寻找两个正序数组的中位数

思路:在两个数组中各画一条分隔线,使得两数组在分隔线左边的元素个数之和等于分隔线右边的元素个数之和,或者比右边元素个数之和大1,分别对应两数组元素之和为偶数和奇数的情况。这样的分隔线有很多,假设第一个数组有3个元素,第二个数组有5个元素,那么分隔线左右两边的元素个数之和都为4。

分隔线可能的情况如下:

第一个数组的分隔线在最左边,即分隔线左边没有元素,分隔线右边有3个元素,第二个数组的分隔线左边就得有4个元素,右边有1个元素。

第一个数组的分隔线左边有1个元素,分隔线右边有2个元素,第二个数组的分隔线左边就得有3个元素,右边有2个元素。

第一个数组的分隔线左边有2个元素,分隔线右边有1个元素,第二个数组的分隔线左边就得有2个元素,右边有3个元素。

第一个数组的分隔线左边有3个元素,分隔线右边没有元素,第二个数组的分隔线左边就得有1个元素,右边有4个元素。

posted on 2021-10-13 14:37  koushr  阅读(29)  评论(0编辑  收藏  举报

导航