// @leet start function findMedianSortedArrays(nums1: number[], nums2: number[]): number { const merged: number[] = []; let aIndex = 0; let bIndex = 0; while (true) { const a = nums1[aIndex]; const b = nums2[bIndex]; if (a === undefined && b === undefined) { break; } if (a === undefined && b !== undefined) { merged.push(b); bIndex++; } if (a !== undefined && b === undefined) { merged.push(a); aIndex++; } if (a !== undefined && b !== undefined) { if (a <= b) { merged.push(a); aIndex++; } else { merged.push(b); bIndex++; } } } let median: number; if (merged.length % 2 === 0) { const left = Math.floor((merged.length - 1) / 2); const right = left + 1; median = (merged[left] + merged[right]) / 2; } else { median = merged[(merged.length - 1) / 2]; } return median; } // @leet end