• 寻找两个正序数组的中位数


    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 欢迎各位转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接
  • 相关阅读:
    win10自动休眠解决方法
    创世纪游戏、黄金分割比
    placeholder和assign速度对比
    内耗
    windows下编写dll
    北航院系和数字的对应关系
    maven Could not resolve dependencies
    java9模块不可见问题
    maven-dependencies插件的模拟实现
    Freemarker简单封装
  • 原文地址:https://www.cnblogs.com/jackson1/p/13605827.html
Copyright © 2020-2023  润新知