1. Binary Search
while ( i + 1 < j) 模板
Rotated Array
Matrix里的二分查找
二分答案
Median of two sorted Array
经典难题
参考山景城1姐视频 3:10开始,10:50 https://www.youtube.com/watch?v=ScCg9v921ns
cutA, cutB
L1<=R2, L2<= R1
假设nums1.length <= nums2.length, 可以只对较短的nums做binary search, O(Log(min(m,n)))
cutA是nums1的分界线,表示nums1分割线左边数组元素个数
cutB是nums2的分界线,表示nums2分割线左边数组元素个数
cutA和cutB左边的数肯定都是<=右边的数
L1为cutA左边最大的数,R1为cutA右边最小的数
L2为cutB左边最大的数,R2为cutB右边最小的数
规定左边的元素个数会等于或比右半边元素个数多1,这样当len为奇数时,median num = max(L1, L2)
问题转化成如何找到正确的cutA和cutB的位置--> L1<=R2, L2<= R1
Last updated
Was this helpful?