* @param {number[]} nums1 * @param {number[]} nums2 * @return {number}
(nums1, nums2, k)
| 9 | * @return {number} |
| 10 | */ |
| 11 | function findKth(nums1, nums2, k) { |
| 12 | if (nums1.length === 0) return nums2[k - 1]; |
| 13 | if (nums2.length === 0) return nums1[k - 1]; |
| 14 | if (k == 1) return Math.min(nums1[0], nums2[0]); |
| 15 | let i = Math.min(k >> 1, nums1.length); |
| 16 | let j = Math.min(k >> 1, nums2.length); |
| 17 | if (nums1[i - 1] > nums2[j - 1]) { |
| 18 | return findKth(nums1, nums2.slice(j), k - j); |
| 19 | } |
| 20 | |
| 21 | return findKth(nums1.slice(i), nums2, k - i); |
| 22 | } |
| 23 | var findMedianSortedArrays = function(nums1, nums2) { |
| 24 | // 1 |
| 25 | // 2 3 4 5 |
no outgoing calls
no test coverage detected