class Solution {
public:
double findMedianSortedArrays(vector<int>& nums1, vector<int>& nums2) {
int n = nums1.size(), m = nums2.size();
vector<int> newnums;
int mednum = (n + m) / 2 + 1;
int i = 0, j = 0;
while (i + j < n + m)
{
if ( i < n && j < m && nums1[i] <= nums2[j] )
{
newnums.push_back(nums1[i]);
printf("i%d ", nums1[i]);
i++;
}
else if (j < m)
{
newnums.push_back(nums2[j]);
printf("j%d ", nums2[j]);
j++;
}
else
{
newnums.push_back(nums1[i]);
printf("i%d ", nums1[i]);
i++;
}
if (newnums.size() == mednum)
{
// for (int z = 0; z < newnums.size(); z++)
// {
// printf("%d ", newnums[z]);
// }
// printf("\n");
if ((n + m) % 2 == 0)
{
return (double)(((double)newnums[mednum - 1] + (double)newnums[mednum - 2]) / 2);
}
else
{
return newnums[mednum - 1];
}
}
}
return 0.0;
}
};
leetcode 04
最新推荐文章于 2024-07-18 08:26:33 发布