当前位置: 首页 > news >正文

面试经典 150 题 1 —(数组 / 字符串)— 88. 合并两个有序数组

88. 合并两个有序数组

在这里插入图片描述

在这里插入图片描述

方法一:
class Solution {
public:void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {for(int i = 0; i<n;i++){nums1[m+i] = nums2[i];}sort(nums1.begin(),nums1.end());}
};
方法二:
class Solution {
public:void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {nums1.erase(nums1.begin()+m,nums1.end());nums2.erase(nums2.begin()+n,nums2.end());vector<int> tmp;while (n && m) {if (nums1.front() <= nums2.front()) {tmp.push_back(nums1.front());nums1.erase(nums1.begin());m--;} else {tmp.push_back(nums2.front());nums2.erase(nums2.begin());n--;}}if (!m) {tmp.insert(tmp.end(), nums2.begin(), nums2.end());nums1 = tmp;}if (!n) {tmp.insert(tmp.end(), nums1.begin(), nums1.end());nums1 = tmp;}}
};
方法三:性能最好
class Solution {
public:void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {int p1 = 0, p2 = 0;int sorted[m + n];int cur;while (p1 < m || p2 < n) {if (p1 == m) {cur = nums2[p2++];} else if (p2 == n) {cur = nums1[p1++];} else if (nums1[p1] < nums2[p2]) {cur = nums1[p1++];} else {cur = nums2[p2++];}sorted[p1 + p2 - 1] = cur;}for (int i = 0; i != m + n; ++i) {nums1[i] = sorted[i];}}
};

相关文章:

面试经典 150 题 1 —(数组 / 字符串)— 88. 合并两个有序数组

88. 合并两个有序数组 方法一&#xff1a; class Solution { public:void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {for(int i 0; i<n;i){nums1[mi] nums2[i];}sort(nums1.begin(),nums1.end());} };方法二&#xff1a; clas…...

【大数据 | 综合实践】大数据技术基础综合项目 - 基于GitHub API的数据采集与分析平台

&#x1f935;‍♂️ 个人主页: AI_magician &#x1f4e1;主页地址&#xff1a; 作者简介&#xff1a;CSDN内容合伙人&#xff0c;全栈领域优质创作者。 &#x1f468;‍&#x1f4bb;景愿&#xff1a;旨在于能和更多的热爱计算机的伙伴一起成长&#xff01;&#xff01;&…...

超高频RFID模具精细化生产管理方案

近二十年来&#xff0c;我国的模具行业经历了快速发展的阶段&#xff0c;然而&#xff0c;模具行业作为一个传统、复杂且竞争激烈的行业&#xff0c;企业往往以订单为导向&#xff0c;每个订单都需要进行新产品的开发&#xff0c;从客户需求分析、结构确定、报价、设计、物料准…...

FP-Growth算法全解析:理论基础与实战指导

目录 一、简介什么是频繁项集&#xff1f;什么是关联规则挖掘&#xff1f;FP-Growth算法与传统方法的对比Apriori算法Eclat算法 FP树&#xff1a;心脏部分 二、算法原理FP树的结构构建FP树第一步&#xff1a;扫描数据库并排序第二步&#xff1a;构建树 挖掘频繁项集优化&#x…...

Jmeter 分布式压测,你的系统能否承受高负载?

‍你可以使用 JMeter 来模拟高并发秒杀场景下的压力测试。这里有一个例子&#xff0c;它模拟了同时有 5000 个用户&#xff0c;循环 10 次的情况‍。 请求默认配置 token 配置 秒杀接口 ​结果分析 ​但是&#xff0c;实际企业中&#xff0c;这种压测方式根本不满足实际需求。下…...

什么是浮动密封?

浮动密封也称为机械面密封或双锥密封&#xff0c;是一种用于各种行业和应用的特殊类型的密封装置。它旨在提供有效的密封和保护&#xff0c;防止污染物的进入以及旋转设备中润滑剂或液体的润滑剂泄漏。 浮动密封件由相同的金属环组成&#xff0c;这些金属环称为密封环&#xf…...

浅析前端单元测试

对于前端来说&#xff0c;测试主要是对HTML、CSS、JavaScript进行测试&#xff0c;以确保代码的正常运行。 常见的测试有单元测试、集成测试、端到端&#xff08;e2e&#xff09;的测试。 单元测试&#xff1a;对程序中最小可测试单元进行测试。我们可以类比对汽车的测试&…...

线上mysql表字段加不了Fail to get MDL on replica during DDL synchronize,排查记录

某天接近业务高峰期想往表里加字段加不了&#xff0c;报错&#xff1a;Fail to get MDL on replica during DDL synchronize 遂等到业务空闲时操作、还是加不了&#xff0c; 最后怀疑是相关表被锁了&#xff0c;或者有事务一直进行&#xff08;可能这俩是一个意思&#xff09;&…...

vue3使用element plus的时候组件显示的是英文

问题截图 这是因为国际化导致的 解决代码 import zhCn from "element-plus/es/locale/lang/zh-cn"; 或者 import zhCn from "element-plus/lib/locale/lang/zh-cn";const localezhCn<el-config-provider :locale"locale"><el-date-pic…...

Matlab参数估计与假设检验(举例解释)

参数估计分为点估计和区间估计&#xff0c;在matlab中可以调用namefit()函数来计算参数的极大似然估计值和置信区间。而数据分析中用得最多的是正态分布参数估计。 例1 从某厂生产的滚珠中抽取10个&#xff0c;测得滚珠的直径&#xff08;单位&#xff1a;mm&#xff09;为x[…...

qt响应全局热键

QT5 QWidget响应全局热键-百度经验...

android 代码设置静态Ip地址的方法

在Android中&#xff0c;可以使用以下代码示例来设置静态IP地址&#xff1a; import android.content.Context import android.net.ConnectivityManager import android.net.LinkAddress import android.net.Network import android.net.NetworkCapabilities import android.ne…...

Elasticsearch安装访问

Elasticsearch 是一个开源的、基于 Lucene 的分布式搜索和分析引擎&#xff0c;设计用于云计算环境中&#xff0c;能够实现实时的、可扩展的搜索、分析和探索全文和结构化数据。它具有高度的可扩展性&#xff0c;可以在短时间内搜索和分析大量数据。 Elasticsearch 不仅仅是一个…...

面试题-React(十):setState为什么使用异步机制?

在React中&#xff0c;setState的异步特性和异步渲染机制是开发者们经常讨论的话题。为什么React选择将setState设计为异步操作&#xff1f;异步渲染又是如何实现的&#xff1f;本篇博客将深入探究这些问题&#xff0c;通过代码示例解释为什么异步操作是React的一大亮点。 一、…...

入侵防御系统(IPS)网络安全设备介绍

入侵防御系统&#xff08;IPS&#xff09;网络安全设备介绍 1. IPS设备基础 IPS定义 IPS&#xff08;Intrusion Prevention System&#xff09;是一种网络安全设备或系统&#xff0c;用于监视、检测和阻止网络上的入侵尝试和恶意活动。它是网络安全架构中的重要组成部分&…...

【Linux基础】Linux的基本指令使用(超详细解析,小白必看系列)

&#x1f449;系列专栏&#xff1a;【Linux基础】 &#x1f648;个人主页&#xff1a;sunnyll 目录 &#x1f4a6; ls 指令 &#x1f4a6; pwd指令 &#x1f4a6;cd指令 &#x1f4a6;touch指令 &#x1f4a6;mkdir指令&#xff08;重要&#xff09; &#x1f4a6;rmdir指令…...

【无标题】Test

短视频平台的那些事 前言 过去几年&#xff0c;我一直专注于短视频平台的建设和开发工作。在这个过程中&#xff0c;我发现这个领域有着非常多的挑战和机遇&#xff0c;也涌现出了许多新的技术和创新。今天大家分享我个人的一些经验&#xff0c;希望能够为大家带来一些启发和帮…...

1576. 替换所有的问号

1576. 替换所有的问号 C代码&#xff1a;自己写的 char * modifyString(char * s){int n strlen(s);for (int i 0; i < n; i){if (s[i] ?) {if (i ! 0 && i ! n-1) {for (int j 0; j < 26; j) {if (a j ! s[i-1] && a j ! s[i1]) {s[i] a j;br…...

MySQL学习笔记(快速入门)

Mysql快速入门 一、数据库相关概念1.启动数据库2. 客户端连接3. 数据模型4.关系型数据库RDBMS 二、SQL语言1. 通用语法2. SQL分类 三、DDL数据定义语言1. 数据库操作2. 表操作&#xff08;1&#xff09; 查询当前数据库所有表show tables;&#xff08;2&#xff09; 查询表的结…...

使用DNS查询Web服务器IP地址

浏览器并不具备访问网络的功能&#xff0c;其最终是通过操作系统实现的&#xff0c;委托操作系统访问服务器时提供的并不是浏览器里面输入的域名而是ip地址&#xff0c;因此第一步需要将域名转换为对应的ip地址 域名&#xff1a;www.baidu.com ip地址是一串数字 tcp/ip的网络结…...

自建链接管理服务OtterLink:从部署到实战的完整指南

1. 项目概述&#xff1a;一个链接管理的“瑞士军刀” 最近在折腾个人知识库和内容分发&#xff0c;发现一个痛点&#xff1a;手头攒了太多链接。技术文章、工具网站、项目仓库、临时笔记链接……散落在浏览器书签、聊天记录、备忘录里&#xff0c;时间一长要么找不到&#xff…...

2026年AI编程软件综合推荐 主流工具全面排行

Trae作为字节跳动打造的AI原生集成开发环境&#xff0c;代码生成准确率可达98%&#xff0c;截至2025年底累计注册用户已突破600万。2026年各类AI编程软件层出不穷&#xff0c;从新手入门到专业开发&#xff0c;适配不同需求的AI编程工具成为开发者刚需&#xff0c;选对一款合适…...

别再死记硬背了!用PyTorch和TensorFlow动手实现四种池化层,直观理解它的作用

用代码可视化理解深度学习中的池化层&#xff1a;PyTorch与TensorFlow实战指南 当你第一次听说"池化层"这个概念时&#xff0c;是否也感到困惑&#xff1f;为什么神经网络需要这样一个"缩小"图像的层&#xff1f;本文将通过PyTorch和TensorFlow两种框架的实…...

常闭式防火门,关严才是安全门|90% 的火灾隐患源于忽视它

常闭式防火门&#xff0c;关严才是真正的安全门&#xff01;现实里 90% 的消防火灾隐患&#xff0c;都源于常闭式防火门长期敞开、随意封堵、私自固定不关。很多人觉得开门方便通行、搬货省事&#xff0c;却忽略了它的核心作用&#xff1a;防火隔烟、阻隔火势、延缓蔓延、守护疏…...

从零搭建AI增强型第二大脑:NotebookLM+Obsidian+Dataview三体联动,7天知识处理效率提升3.8倍

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;NotebookLM与Obsidian整合的底层逻辑与价值定位 NotebookLM 与 Obsidian 的整合并非简单插件叠加&#xff0c;而是基于“语义增强型知识工作流”的范式迁移。其底层逻辑根植于双引擎协同&#xff1a;No…...

实战案例:使用tsne-cuda加速CIFAR-10数据集的高维可视化分析

实战案例&#xff1a;使用tsne-cuda加速CIFAR-10数据集的高维可视化分析 【免费下载链接】tsne-cuda GPU Accelerated t-SNE for CUDA with Python bindings 项目地址: https://gitcode.com/gh_mirrors/ts/tsne-cuda t-SNE是机器学习领域常用的高维数据降维可视化工具&a…...

Linux服务器运维实战:为什么我更推荐用apt安装FileZilla而不是下载tar包?

Linux服务器运维实战&#xff1a;为什么我更推荐用apt安装FileZilla而不是下载tar包&#xff1f; 每次在Linux服务器上部署FTP客户端时&#xff0c;我都会面临一个选择&#xff1a;是直接apt install filezilla&#xff0c;还是去官网下载tar包手动安装&#xff1f;五年前我可能…...

RK3368安卓9.0升级后卡Recovery?手把手教你分析串口日志定位NAND/EMMC分区问题

RK3368安卓9.0升级卡Recovery&#xff1f;串口日志深度分析与NAND/EMMC分区修复实战 当RK3368平台设备在升级Android 9.0固件后卡在Recovery界面时&#xff0c;这往往意味着底层存储设备的分区加载机制出现了问题。作为一名嵌入式开发者&#xff0c;能够从串口日志中抽丝剥茧定…...

AMBA CHI协议Issue F更新解析与SoC设计优化

1. AMBA CHI Issue F协议更新深度解析AMBA CHI&#xff08;Coherent Hub Interface&#xff09;作为Arm体系结构中的关键一致性协议&#xff0c;在多核处理器设计中扮演着至关重要的角色。最新发布的Issue F版本对协议规范进行了多项重要修正&#xff0c;这些变更直接影响SoC设…...

Easydict:基于Raycast的智能翻译与查词插件,提升开发效率

1. 项目概述&#xff1a;一个为效率而生的翻译与查词工具如果你和我一样&#xff0c;是个常年和外语资料打交道的程序员、学生或研究者&#xff0c;那么“查词”和“翻译”这两件事&#xff0c;大概率是你工作流里最频繁、也最容易被中断的环节。传统的操作路径是什么&#xff…...