寻找两个正序数组的中位数
1.题目描述
2.解题思路
代替指针利用pop方法来吧数据弹出数组,减少了指针i,j的边界条件的判断,更加通俗易懂。
3.代码实现
/**
* @param {number[]} nums1
* @param {number[]} nums2
* @return {number}
*/
var findMedianSortedArrays = function(nums1, nums2) {
let pre, cur
let length = nums2.length + nums1.length
let i = 0
while( i++ < parseInt(length / 2) + 1) {
pre = cur
if (nums1.length !== 0 && nums2.length !== 0) {
cur = nums1[nums1.length -1 ] > nums2[nums2.length - 1] ? nums1.pop() : nums2.pop()
} else if (nums2.length ===0 ) {
cur = nums1.pop()
} else {
cur = nums2.pop()
}
}
let res = cur
if (length % 2 === 0) {
res = (cur + pre) / 2
}
return res
};
感谢您花时间阅读此篇文章,如果您觉得看了这篇文章之后心情还比较高兴,可以打赏一下,请博主喝上一杯咖啡,让博主继续码字……
本文版权归作者和博客园共有,来源网址:https://blog.csdn.net/weixin_46498102 欢迎各位转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接