码迷,mamicode.com
首页 > Web开发 > 详细

[JS做LeetCode] Median of Two Sorted Arrays

时间:2015-03-21 18:37:28      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:

Median of Two Sorted Arrays

<html>

<head>
    <meta http-equiv="charset" content="utf-8"></head>

<body>
    <script>
        //解题思路:
        //找出中位数要循环的次数为loop
        //posA为数组A的下标,posB为数组B的下标
        //每次循环找出两个数组对应下标比较小的值,进栈,下标+1
        //注意判断数组为空的情况

        var A = [0,1,4,8];
        var B = [2,7,9,10];
        var findMedianSortedArrays = function(A, B) {
                var m = A.length;
                var n = B.length;
                var loop = Math.floor((m+n)/2)+1;
                var posA = 0;
                var posB = 0;
                var stack = [];

                for(var i=0; i<loop; i++) {
                        if(posA === m) {
                                stack.push(B[posB]);
                                posB++;
                                continue;
                        }
                        if(posB === n) {
                                stack.push(A[posA]);
                                posA++;
                                continue;
                        }
                        if(A[posA]<B[posB]) {
                                stack.push(A[posA]);
                                posA++;
                        } else {
                                stack.push(B[posB]);
                                posB++;
                        }
                }
                if((m+n)%2 === 0) {
                        return (stack.pop()+stack.pop())/2;
                } else {
                        return stack.pop();
                }
        };

        alert(findMedianSortedArrays(A, B));
    </script></body>

[JS做LeetCode] Median of Two Sorted Arrays

标签:

原文地址:http://www.cnblogs.com/oadaM92/p/4355854.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!