【leetcode详解】寻找两个正序数组的中位数:最简单的【困难】题?

简评: 可以说,要做出来这道题,实际上是非常简单的

//这也是笔者目前唯一解出来的唯一一道【困难】题哈哈哈哈

思路解析:

将两个向量合并

cpp 复制代码
class Solution {
public:
    double findMedianSortedArrays(vector<int>& nums1, vector<int>& nums2) {
       nums1.insert(nums1.end(), nums2.begin(), nums2.end());
    }
};

排序

cpp 复制代码
sort(nums1.begin(), nums1.end());

按中位数的定义给出返回值

cpp 复制代码
int n = nums1.size();
if(n%2 == 1) return (double)nums1[(n-1)/ 2];
return (double)(nums1[n/2] + nums1[n/2 - 1]) / 2;

AC代码如下:

cpp 复制代码
class Solution {
public:
    double findMedianSortedArrays(vector<int>& nums1, vector<int>& nums2) {
       nums1.insert(nums1.end(), nums2.begin(), nums2.end());
       sort(nums1.begin(), nums1.end());
       int n = nums1.size();
       if(n%2 == 1) return (double)nums1[(n-1)/ 2];
       return (double)(nums1[n/2] + nums1[n/2 - 1]) / 2;        
    }
};

~ 希望能给你信心哈哈哈 ~

相关推荐
Jasmine_llq34 分钟前
《P2656 采蘑菇》
算法·强连通分量·广度优先搜索(bfs)·tarjan 算法·图的缩点操作·有向无环图(dag)·最长路径
芥子沫1 小时前
《人工智能基础》[算法篇3]:决策树
人工智能·算法·决策树
mit6.8241 小时前
dfs|位运算
算法
苏纪云1 小时前
算法<C++>——双指针 | 滑动窗口
数据结构·c++·算法·双指针·滑动窗口
保持低旋律节奏1 小时前
算法——二叉树、dfs、bfs、适配器、队列练习
算法·深度优先·宽度优先
Y200309161 小时前
U-net 系列算法总结
人工智能·算法·目标跟踪
代码不停1 小时前
Java二分算法题目练习
java·算法
等一个自然而然的晴天~1 小时前
晴天小猪历险记之Hill---Dijkstra算法
算法
Brookty1 小时前
【算法】位运算| & ^ ~ -n n-1
学习·算法·leetcode·位运算
.格子衫.1 小时前
023数据结构之线段树——算法备赛
java·数据结构·算法