【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;        
    }
};

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

相关推荐
limingade2 小时前
手机实时提取SIM卡打电话的信令和声音-新的篇章(一、可行的方案探讨)
物联网·算法·智能手机·数据分析·信息与通信
jiao000015 小时前
数据结构——队列
c语言·数据结构·算法
迷迭所归处6 小时前
C++ —— 关于vector
开发语言·c++·算法
leon6256 小时前
优化算法(一)—遗传算法(Genetic Algorithm)附MATLAB程序
开发语言·算法·matlab
CV工程师小林6 小时前
【算法】BFS 系列之边权为 1 的最短路问题
数据结构·c++·算法·leetcode·宽度优先
Navigator_Z7 小时前
数据结构C //线性表(链表)ADT结构及相关函数
c语言·数据结构·算法·链表
Aic山鱼7 小时前
【如何高效学习数据结构:构建编程的坚实基石】
数据结构·学习·算法
天玑y7 小时前
算法设计与分析(背包问题
c++·经验分享·笔记·学习·算法·leetcode·蓝桥杯
sjsjs117 小时前
【数据结构-一维差分】力扣1893. 检查是否区域内所有整数都被覆盖
数据结构·算法·leetcode
redcocal8 小时前
地平线秋招
python·嵌入式硬件·算法·fpga开发·求职招聘