1. Job Roadmap
  2. Home
  3. Problem Set
  4. codenotelist
  5. Forum
  6. course
  7. Shore Share Sessions
  8. Record
  1. Login
  2. Sign Up
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
    ZhContent TextSol AI分析

题解链接

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

    1000ms Tried: 1674 Accepted: 430 Difficulty: 7 所属公司 : Hot100
    算法与标签>二分算法

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

题目描述

给定两个大小分别为 mmm 和 nnn 的正序数组 nums1nums1nums1 和 nums2nums2nums2。

请你找出并返回这两个正序数组合并后的中位数。

算法的时间复杂度应为 O(log(m+n))O(log(m+n))O(log(m+n))。

中位数定义如下:

如果合并后的数组长度为奇数,则中位数为中间的那个数。

如果合并后的数组长度为偶数,则中位数为中间两个数的平均值。

输入描述

第一行输入两个整数 mmm 和 nnn,分别表示数组 nums1nums1nums1 和数组 nums2nums2nums2 的长度。

第二行输入 mmm 个整数,表示正序数组 nums1nums1nums1 中的元素。

第三行输入 nnn 个整数,表示正序数组 nums2nums2nums2 中的元素。

如果某个数组长度为 000,则对应行为空行。

输出描述

输出一个浮点数,表示两个正序数组合并后的中位数。

结果保留 555 位小数。

样例 111

输入

2 1
1 3
2

输出

2.00000

样例解释

合并数组为 [1,2,3][1, 2, 3][1,2,3],中位数为 222。

样例 222

输入

2 2
1 2
3 4

输出

2.50000

样例解释

合并数组为 [1,2,3,4][1, 2, 3, 4][1,2,3,4],中位数为 (2+3)/2=2.5(2 + 3) / 2 = 2.5(2+3)/2=2.5。

数据范围

nums1.length==mnums1.length == mnums1.length==m

nums2.length==nnums2.length == nnums2.length==n

0<=m<=10000 <= m <= 10000<=m<=1000

0<=n<=10000 <= n <= 10000<=n<=1000

1<=m+n<=20001 <= m + n <= 20001<=m+n<=2000

−106<=nums1[i],nums2[i]<=106-10^6 <= nums1[i], nums2[i] <= 10^6−106<=nums1[i],nums2[i]<=106

nums1nums1nums1 和 nums2nums2nums2 均为正序数组。

登录后即可使用 AI 分析。

模式
倒计时时长
:

最长 10 小时 59 分;应用后按此时长重新开始。

提示:点击提交记录在左侧题面区域查看详情
题库
AI分析设置
留空使用官方API Key,每天有次数限制(自定义API Key仅限会员和管理员使用,不限次数)
会员和管理员可切换模型;切到 Kimi/智谱/通义/豆包时需填写对应供应商 API Key
升级会员,可将运行与提交冷却时间缩短至 1 秒起

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 京ICP备2025123107号-1
  2. Worker 0, 86ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

请使用微信扫描下方二维码完成注册

Forgot password or username?