两个序列的中位数(双指针)

简介: 两个序列的中位数(双指针)

一个长度为n(n⩾1)的升序序列S,处在第2n个位置的数称为序列S的中位数(median number),例如,序列S1={10,13,14,16,18,19}的中位数是14。两个序列的中位数是它们所有元素的升序序列的中位数,例如,S2={2,4,8,9,20,21},则S1和S2的中位数是13。现有两个等长升序序列A和B,试设计一个在时间和空间两方面都尽可能高效的算法,找出两个序列的中位数。


输入格式:

输入在三行进行,第一行1个非负整数N,表示两个数列的长度,第二行和第三行,每行N个非负整数,数与数之间用空格间隔。


输出格式:

在一行内输出一个整数。


输入样例:

1. 6
2. 8 11 14 15 17 19
3. 2 4 6 9 10 12


输出样例:

10


#include <iostream>
#include <vector>
using namespace std;
int main()
{
    int n, x;
    vector<int>ans;
    scanf("%d", &n);
    for (int i = 0; i < 2 * n; i ++ )
    {
        scanf("%d", &x);
        ans.push_back(x);
    }
    int l1 = 0, l2 = n;
    for (int i = 1; i < n; i ++ )
    {
        if(ans[l1] < ans[l2]) l1 ++;
        else l2 ++;
    }
    if(ans[l1] < ans[l2]) printf("%d", ans[l1]);
    else printf("%d", ans[l2]);
    return 0;
}
目录
相关文章
|
消息中间件 存储 SQL
跨系统数据一致性方案的思考(上)
本文主要意在总结沉淀现有问题解决经验过程,整理解决跨系统数据不一致问题的经验方法。 跨系统数据一致性,比较优秀的解决方案就是微服务化,不同应用系统采用统一数据源方式,这样可以有效避免数据一致性问题。 但是我们很多系统由于历史原因或者业务缘由,导致非服务化情况下,又要采取数据一致性方案。
跨系统数据一致性方案的思考(上)
|
前端开发 JavaScript Java
校园志愿者|基于Springboot校园志愿者管理系统
校园志愿者|基于Springboot校园志愿者管理系统
327 2
|
测试技术 开发者 Ruby
Ruby领域特定语言(DSL)的神秘力量:如何让你的代码飞起来?
【8月更文挑战第31天】在软件开发领域,Ruby以简洁的语法和强大的表达能力著称,但面对复杂业务逻辑时,代码可能变得冗长难维护。此时,领域特定语言(DSL)成为解决问题的有效途径。DSL专为特定领域设计,使代码更贴近业务逻辑,提高可读性和可维护性。本文通过示例展示了如何在Ruby中开发DSL,包括使用解析器和宏功能创建一个简单的Web应用结构描述语言,并提出了定义清晰语法、避免滥用DSL等最佳实践,强调了测试与文档的重要性。
179 0
|
安全 Ubuntu Linux
Linux 文件传输利器:SCP 和 LRZSZ
**摘要:** 本文介绍了Linux下安全的文件传输工具`scp`和`lrzsz`。`scp`基于SSH,用于安全地在本地和远程主机间拷贝文件或目录,例如`scp user@host:file local_path`或`scp local_file user@host:remote_path`。`lrzsz`包含`rz`(上传)和`sz`(下载)命令,通过SSH连接传输文件,安装后在终端中使用`rz`选择本地文件上传,用`sz file`下载远程文件。注意`scp`需正确权限,`lrzsz`需SSH客户端支持ZModem。这两个工具为跨平台文件传输提供了便利。
254 2
|
机器学习/深度学习 数据可视化 Serverless
4种SVM主要核函数及相关参数的比较
本文将用数据可视化的方法解释4种支持向量机核函数和参数的区别
422 1
|
机器学习/深度学习 人工智能 算法
图解机器学习 | 朴素贝叶斯算法详解
朴素贝叶斯是一个非常直观的模型。本文讲解朴素贝叶斯算法的核心思想、贝叶斯公式、条件独立假设、平滑出等重要知识点,并图解多项式贝叶斯和伯努利贝叶斯等多种形态。
2184 1
图解机器学习 | 朴素贝叶斯算法详解
|
XML 运维 监控
PowerShell实战:Get-Content命令使用详解
【2月更文挑战第12篇】 Get-Content 主要作用是获取路径指定位置的项(文本类文件)的内容,例如文件中的文本或函数的内容。 对于文件,内容一次读取一行,并返回对象的集合,每个对象表示一行内容。
|
算法 数据挖掘 数据库
【数据挖掘】关联规则、频繁项集、闭项集详解(图文解释 超详细)
【数据挖掘】关联规则、频繁项集、闭项集详解(图文解释 超详细)
2103 1
|
存储 机器学习/深度学习 人工智能
向量数据库简介和5个常用的开源项目介绍
在人工智能领域,有大量的数据需要有效的处理。随着我们对人工智能应用,如图像识别、语音搜索或推荐引擎的深入研究,数据的性质变得更加复杂。这就是向量数据库发挥作用的地方。与存储标量值的传统数据库不同,向量数据库专门设计用于处理多维数据点(通常称为向量)。这些向量表示多个维度的数据,可以被认为是指向空间中特定方向和大小的箭头。
3916 1
|
编解码 监控 数据可视化
企业经营数据大屏实践展示|学习笔记
快速学习企业经营数据大屏实践展示
企业经营数据大屏实践展示|学习笔记