LeetCode 4. 寻找两个正序数组的中位数

原题目:https://leetcode-cn.com/problems/median-of-two-sorted-arrays/

 

思路:

如果某一个数组的长度为零,直接返回另外一个数组的中位数,否则:

用双指针法将两个数组合并为一个数组(o(n+m)),然后返回该数组的中位数。

 

代码:

class Solution {
public:
    double findMedianSortedArrays(vector& nums1, vector& nums2) {
        int m=nums1.size(),n=nums2.size();
        if(m==0){
            if(n%2){
                return nums2[nums2.size()/2];
            }
            else{
                return (nums2[nums2.size()/2-1] + nums2[nums2.size()/2])/2.0;
            }
        }
        if(n==0){
            if(m%2){
                return nums1[nums1.size()/2];
            }
            else{
                return (nums1[nums1.size()/2-1] + nums1[nums1.size()/2])/2.0;
            }
        }

        int count=0,i=0,j=0;
        vector s(n+m);
        while(i

 

你可能感兴趣的:(LeetCode,双指针,数组)