情未る 2022-05-02 23:36:09
想到一个 O(n) 的解法,类似归并排序,抛砖引玉
const findMedianSortedArrays = function( nums1: number[], nums2: number[] ) { const lenN1 = nums1.length; const lenN2 = nums2.length; const median = Math.ceil((lenN1 + lenN2 + 1) / 2); const isOddLen = (lenN1 + lenN2) % 2 === 0; const result = new Array<number>(median); let i = 0; // pointer for nums1 let j = 0; // pointer for nums2 for (let k = 0; k < median; k++) { if (i < lenN1 && j < lenN2) { // tslint:disable-next-line:prefer-conditional-expression if (nums1[i] < nums2[j]) { result[i + j] = nums1[i++]; } else { result[i + j] = nums2[j++]; } } else if (i < lenN1) { result[i + j] = nums1[i++]; } else if (j < lenN2) { result[i + j] = nums2[j++]; } } if (isOddLen) { return (result[median - 1] + result[median - 2]) / 2; } else { return result[median - 1]; } };
情未る 2022-05-02 09:43:16
https://http.cat/301
https://http.cat/302
- 共 1 页
- 1
@hugeorange 这种实现与setInterval的差异呢?
第 133 题:用 setTimeout 实现 setInterval,阐述实现的效果与 setInterval 的差异?