当前位置:网站首页>每日一题-寻找两个正序数组的中位数-0713
每日一题-寻找两个正序数组的中位数-0713
2022-08-05 05:17:00 【菜鸡程序媛】
题目:
给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。
算法的时间复杂度应该为 O(log (m+n)) 。
这个题,目前还不是很理解,为了速度,先背了…
class Solution {
public double findMedianSortedArrays(int[] nums1, int[] nums2) {
if(nums1.length > nums2.length)
return findMedianSortedArrays(nums2, nums1);
int m = nums1.length;
int n = nums2.length;
int left = 0, right = m;
int mid1 = 0, mid2 = 0;
while(left <= right){
int i = (left + right) / 2;
int j = (m + n + 1) / 2 - i;
int nums_im1 = i == 0 ? Integer.MIN_VALUE : nums1[i - 1];
int nums_i = i == m ? Integer.MAX_VALUE : nums1[i];
int nums_jm1 = j == 0 ? Integer.MIN_VALUE : nums2[j - 1];
int nums_j = j == n ? Integer.MAX_VALUE : nums2[j];
if(nums_im1 < nums_j){
mid1 = Math.max(nums_im1, nums_jm1);
mid2 = Math.min(nums_i, nums_j);
left = left + 1;
}else{
right = right - 1;
}
}
return (m + n) % 2 == 0 ? (mid1 + mid2) / 2.0 : mid1;
}
}
边栏推荐
- LeetCode刷题之第23题
- [Database and SQL study notes] 9. (T-SQL language) Define variables, advanced queries, process control (conditions, loops, etc.)
- 《基于机器视觉的输电线路交叉点在线测量方法及技术方案》论文笔记
- TinyFlashDB:一种超轻量的可纠错的通用单片机flash存储方案
- 1008 数组元素循环右移问题 (20 分)
- PoE视频监控解决方案
- GIS面试问题
- idea 快速日志
- 【UiPath2022+C#】UiPath控制流程概述
- (oj)原地移除数组中所有的元素val、删除排序数组中的重复项、合并两个有序数组
猜你喜欢
【论文阅读-表情捕捉】ExpNet: Landmark-Free, Deep, 3D Facial Expressions
[Kaggle project actual combat record] Steps and ideas sharing of a picture classification project - taking leaf classification as an example (using Pytorch)
【UiPath2022+C#】UiPath 数据操作
CVPR2020 - 自校准卷积
LeetCode刷题之第86题
六、请求处理—获取请求参数系列注解是怎样工作的?
【Shell编程】第一章:子串
用GAN的方法来进行图片匹配!休斯顿大学提出用于文本图像匹配的对抗表示学习,消除模态差异!
AIDL detailed explanation
沁恒MCU从EVT中提取文件建立MounRiver独立工程
随机推荐
电子产品量产工具(1)- 显示系统实现
七、请求处理——Map、Model类型参数处理原理
Redis设计与实现(第三部分):多机数据库的实现
关于存储IOPS你必须了解的概念
【ts】typescript高阶:键值类型及type与interface区别
Jupyter notebook选择不同的Anaconda环境作为内核运行
每日一题-无重复字符的最长子串-0712
Leetcode刷题——对链表进行插入排序
每日一题-删除链表的倒数第 N 个结点-0718
Redis设计与实现(第一部分):数据结构与对象
【Promise高级用法】实现并行和串行API
物联网-广域网技术之NB-IoT
每日一题-有效的括号-0719
Redis设计与实现(第二部分):单机数据库的实现
深度学习系列(一)简介、线性回归与成本函数
OSPF故障排除办法
浅谈遇到的小问题
CVPR 2022 | 70% memory savings, 2x faster training
【ts】typescript高阶:映射类型与keyof
[Kaggle project actual combat record] Steps and ideas sharing of a picture classification project - taking leaf classification as an example (using Pytorch)