IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 数据结构与算法 -> leetcode热题100-4——寻找两个正序数组的中位数 -> 正文阅读

[数据结构与算法]leetcode热题100-4——寻找两个正序数组的中位数

前言

正文

题目

在这里插入图片描述

未看题解时,解题的思路
该题暴力解法肯定是很舒服的,不过,该题要求算法的时间复杂度为O(log(m+n))就还是挺难的。

自己实现的代码
自己的暴解就不贴了,贴一个人家实现的算法。
看了题解后解题的思路

  1. 方法一:就是用两个临时变量,middle1=MIN middle2 = MAX,用这两个来记录该数组的中间两个元素,若是偶数个元素,就相加除2。若是奇数个元素,则直接返回Middle2就可以了。时间复杂度仍是 O(m+n)。这个方法是不太满足进阶的要求的。确实要求O(log(m+n))的方法是比较难的,所以,等以后有时间,再返回解决。寻找两个正序数组的中位数 答案
    标准答案的代码
    方法一:code
class Solution {
public:
    double findMedianSortedArrays(vector<int>& nums1, vector<int>& nums2) {
        int size1 = nums1.size();
        int size2 = nums2.size();
        int totalSize = size1+size2;
        int middle1 = INT_MIN;
        int middle2 = INT_MAX;
        int index1 = 0;
        int index2 = 0;
        for(int i = 0;i<=totalSize/2;i++)
        {
            middle1 = middle2;
            if(index2>=size2||(index1<size1&&nums1[index1]<nums2[index2]))
                middle2 = nums1[index1++];
            else
                middle2 = nums2[index2++];
        }
        if((totalSize%2)==0)
            return (middle1+middle2)/2.0;
        else
            return middle2;
    }
};

这是我的分析过程,可供参考
在这里插入图片描述

参考

  1. 力扣热题100
  数据结构与算法 最新文章
【力扣106】 从中序与后续遍历序列构造二叉
leetcode 322 零钱兑换
哈希的应用:海量数据处理
动态规划|最短Hamilton路径
华为机试_HJ41 称砝码【中等】【menset】【
【C与数据结构】——寒假提高每日练习Day1
基础算法——堆排序
2023王道数据结构线性表--单链表课后习题部
LeetCode 之 反转链表的一部分
【题解】lintcode必刷50题<有效的括号序列
上一篇文章      下一篇文章      查看所有文章
加:2021-09-07 11:04:32  更:2021-09-07 11:05:27 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 1:29:57-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码