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

【CT】LeetCode手撕—88. 合并两个有序数组

目录

  • 题目
  • 1- 思路
  • 2- 实现
    • ⭐88. 合并两个有序数组——题解思路
  • 2- ACM实现

题目

  • 原题连接:88. 合并两个有序数组

1- 思路

模式识别

  • 模式1:两个有序数组合并 ——> 双指针
  • 模式2:返回结果填充到 nums1[m+n] ——> 需要开辟新的数组空间 sorted[m+n] 最后结果赋值给 nums1

思路

  • 1.定义双指针:分别指向 nums1nums2
  • 2.开辟新的数组空间sorted[m+n] ,在合并完之后赋值

2- 实现

⭐88. 合并两个有序数组——题解思路

在这里插入图片描述

class Solution {public void merge(int[] nums1, int m, int[] nums2, int n) {int[] sorted = new int[m+n];int si = 0;int index1=0,index2=0;while(index1<m && index2<n){if(nums1[index1]<=nums2[index2]){sorted[si++] = nums1[index1++];}else{sorted[si++] = nums2[index2++];}}while(index1<m){sorted[si++] = nums1[index1++];}while(index2<n){sorted[si++] = nums2[index2++];}// 赋值给 nums1for(int i = 0 ; i < m+n;i++){nums1[i] = sorted[i];}}
}

2- ACM实现

public class mergeTwoArrays {public static int[] mergeTwoArrays(int[] nums1,int m, int[] nums2,int n){int index1 = 0,index2 = 0;int si = 0;int[] sorted = new int[m+n];while(index1<m && index2<n){if(nums1[index1]<=nums2[index2]){sorted[si++] = nums1[index1++];}else{sorted[si++] = nums2[index2++];}}while(index1<m){sorted[si++] = nums1[index1++];}while(index2<n){sorted[si++] = nums2[index2++];}for(int i = 0 ; i < m+n;i++){nums1[i] = sorted[i];}return nums1;}public static void main(String[] args) {System.out.println("输入数组1和数组2长度 m 和 n");Scanner sc = new Scanner(System.in);int m = sc.nextInt();int n = sc.nextInt();int[] nums1 = new int[m+n];int[] nums2 = new int[n];System.out.println("输入数组1");for(int i = 0 ; i <m;i++){nums1[i] = sc.nextInt();}System.out.println("输入数组2");for(int j = 0 ; j < n;j++){nums2[j] = sc.nextInt();}int[] res = mergeTwoArrays(nums1,m,nums2,n);for(int r:res){System.out.print(r+" ");}}
}

相关文章:

【CT】LeetCode手撕—88. 合并两个有序数组

目录 题目1- 思路2- 实现⭐88. 合并两个有序数组——题解思路 2- ACM实现 题目 原题连接&#xff1a;88. 合并两个有序数组 1- 思路 模式识别 模式1&#xff1a;两个有序数组合并 ——> 双指针模式2&#xff1a;返回结果填充到 nums1[mn] ——> 需要开辟新的数组空间 …...

深入分析 Android BroadcastReceiver (二)

文章目录 深入分析 Android BroadcastReceiver (二)1. 深入理解 BroadcastReceiver 的高级使用和优化2. 有序广播&#xff08;Ordered Broadcasts&#xff09;2.1 实现有序广播 3. 粘性广播&#xff08;Sticky Broadcasts&#xff09;3.1 使用粘性广播 4. 本地广播&#xff08;…...

Linux常⽤服务器构建-ssh和scp

目录 1.ssh <1>ssh介绍 <2>安装ssh A.安装ssh服务器 B.远程登陆 <3>使⽤ssh连接服务器 2.scp 本地⽂件复制到远程&#xff1a; 本地⽬录复制到远程&#xff1a; 远程⽂件复制到本地&#xff1a; 远程⽬录复制到本地&#xff1a; 1.ssh <1>…...

《QT实用小工具·七十》openssl+qt开发的P2P文件加密传输工具

1、概述 源码放在文章末尾 该项目实现了P2P的文件加密传输功能&#xff0c;具体包含如下功能&#xff1a; 1、 多文件多线程传输 2、rsaaes文件传输加密 3、秘钥随机生成 4、断点续传 5、跨域传输引导服务器 项目界面如下所示&#xff1a; 接收界面 发送界面 RSA秘钥生成…...

短链接生成器排名前三!长链接转化成短链接工具有哪些?

在现今的网络营销环境中&#xff0c;短链接的应用越来越广泛。它不仅能简化长链接&#xff0c;提高分享效果&#xff0c;还能提升企业品牌形象和用户体验。于是&#xff0c;市场上涌现出众多短链接生成工具。本文将为您揭秘短链接生成器排名前三的产品&#xff0c;帮您找到最适…...

Vue50-mixin混入

一、为什么要使用 mixin混入 两个组件共享一个配置。 二、使用 mixin混入 2-1、创建一个混合js文件 2-2、引入混合js文件 1、局部混合 在每个组件中都引入混合js文件 注意&#xff1a; 混合就是复用配置&#xff0c;vm实例中的所有的配置项&#xff0c;都能在混合.js文件中写…...

Java创建线程的方式

继承Thread类 这是创建线程的基本方式之一。你需要创建一个新的类&#xff0c;该类继承自Thread类&#xff0c;并重写run()方法。然后&#xff0c;你可以创建这个类的一个实例并调用它的start()方法来启动新线程。 public class MyThread extends Thread { Override public vo…...

C# 程序结构

C# 程序结构 C#(读作“C-sharp”)是一种由微软开发的高级编程语言,它是.NET框架的一部分。C# 设计用于现代软件开发,具有强大的类型系统、丰富的库支持和面向对象的特性。本文将详细介绍C#程序的基本结构,包括其语法、类型系统、控制结构、类和对象等。 C# 程序的基本结…...

【Linux】使用 iptables 验证访问HDFS 所使用到的端口

目录 ​编辑 一、实操背景 二、iptables 简介 三、模拟操作 一、实操背景 背景&#xff1a; 在客户有外网的服务器需要访问内网大数据集群HDFS&#xff0c;使用iptable模拟测试需要开放的端口。 二、iptables 简介 具体介绍看文章&#xff1a; 【Linux】Iptables 详解与实战…...

工程设计问题---多盘离合器制动器设计问题

这个问题的主要目的是使多片式离合器制动器的质量最小化。在这个问题中&#xff0c;使用了五个整数决策变量&#xff0c;它们是内半径&#xff08;x1&#xff09;、外半径&#xff08;x2&#xff09;、盘厚度&#xff08;x3&#xff09;、致动器的力&#xff08;x4&#xff09;…...

triton矩阵乘以及缓存优化

这里triton.cdiv(M, META[BLOCK_SIZE_M]) * triton.cdiv(N, META[BLOCK_SIZE_N])&#xff0c;所以grid的形状是一维的。 观察函数内部 pid tl.program_id(axis0)&#xff0c;因为grid是一维的&#xff0c;所以这里就是总块数&#xff0c;我们假设实际A*BC&#xff0c; A&…...

springboot 搭建一个 测试Kafka 集群连通性demo

废话不多说直接上代码&#xff1a; 1.pom <!-- https://mvnrepository.com/artifact/org.springframework.kafka/spring-kafka --><dependency><groupId>org.springframework.kafka</groupId><artifactId>spring-kafka</artifactId><ve…...

Ant Design Vue 动态表头和数据填充

创作动态表头和数据填充的前端应用&#xff1a;使用 Ant Design Vue 在现代前端开发中&#xff0c;动态表格是一个常见而且非常有用的功能。Ant Design Vue作为一个优秀的UI组件库&#xff0c;为开发者提供了丰富的组件和API来实现复杂的前端需求&#xff0c;包括动态表头和数…...

在Spring Cloud项目中集成Springdoc OpenAPI生成OpenAPI 3文档的详细解析

在Spring Cloud项目中集成Springdoc OpenAPI生成OpenAPI 3文档的详细解析 在Spring Cloud项目中生成OpenAPI 3文档&#xff0c;可以使用Springdoc OpenAPI。Springdoc OpenAPI提供了一种简单的方法来生成符合OpenAPI 3规范的API文档。以下是详细的步骤和解析&#xff0c;展示如…...

Linux shell 重定向输入和输出

Linux shell 重定向输入和输出 1. Standard I/O streams2. Redirecting to and from the standard file handles (标准文件句柄的重定向)2.1. command > file2.2. command >> file2.3. command 2> file2.4. command 2>> file2.5. command < file2.6. comm…...

electron录制工具-视频保存、编辑页面

效果如下 electron录屏-保存录制视频 资源 导出视频使用了 mp4-wasm&#xff0c;基本使用&#xff0c;可参考 此文 想法 1、点击按钮导出&#xff0c;弹出选择保存文件夹 2、保存成功后&#xff0c;自动打开保存后文件夹窗口并关闭窗口 实现 获取保存文件夹路径&#xff0…...

curl命令行发送post/get请求

文章目录 curl概述post请求get请求 curl概述 curl 是一个命令行实用程序&#xff0c;允许用户创建网络请求curl 在Windows、 Linux 和 Mac 上皆可使用 post请求 一个简单的 POST 请求 -X&#xff1a;指定与远程服务器通信时将使用哪种 HTTP 请求方法 curl -X POST http://ex…...

Redis 分片集群

一. 前言 前面文章介绍了主从集群和哨兵模式。其中主从集群可以通过读写分离的方式解决高并发场景下的读问题&#xff1b;而在主节点出现故障时&#xff0c;又可以通过哨兵模式的自动选举来实现高可用。 Redis 主从集群 && 哨兵模式 二. Redis 分片集群 2.1 分片集群…...

学习分享-Callable 和 Runnable 任务

前言 顺带回顾学习一下Callable 或 Runnable 任务 Callable 和 Runnable 任务 Callable 和 Runnable 是 Java 中用于定义任务的接口&#xff0c;它们主要用于并发编程&#xff0c;允许任务在独立的线程中运行。 Runnable 任务 Runnable 是一个函数式接口&#xff0c;只包含…...

three.js 基础01

1.场景创建 Scene() 2.常用形状集几何体「Geometry」[可设置长宽高等内容&#xff0c;如&#xff1a;new THREE.BoxGeometry(...)] 长方体 BoxGeometry圆柱体 CylinderGeometry 球体SphereGeometry圆锥体ConeGeometry矩形平面 PlaneGeometry 圆面体 CircleGeo…...

哔哩下载姬(downkyi)终极指南:简单三步掌握B站视频批量下载与处理技巧

哔哩下载姬(downkyi)终极指南&#xff1a;简单三步掌握B站视频批量下载与处理技巧 【免费下载链接】downkyi 哔哩下载姬downkyi&#xff0c;哔哩哔哩网站视频下载工具&#xff0c;支持批量下载&#xff0c;支持8K、HDR、杜比视界&#xff0c;提供工具箱&#xff08;音视频提取、…...

保姆级教程:用Python+ROS从零实现IMU/GPS组合导航(附源码避坑)

从零搭建IMU/GPS组合导航系统&#xff1a;Python与ROS实战指南 在机器人导航领域&#xff0c;单纯依赖GPS或IMU都存在明显缺陷——GPS信号易受遮挡影响&#xff0c;而IMU存在累积误差。将两者数据融合的组合导航技术&#xff0c;正成为自动驾驶小车、无人机和移动机器人的标配方…...

OpenClaw故障模拟:Qwen3.5-4B-Claude在异常操作场景下的恢复能力

OpenClaw故障模拟&#xff1a;Qwen3.5-4B-Claude在异常操作场景下的恢复能力 1. 为什么需要测试AI助手的故障恢复能力 上周我在用OpenClaw自动整理项目文档时&#xff0c;亲眼目睹了一场"数字灾难"——脚本误删了正在编辑的Markdown文件&#xff0c;而我没有开启版…...

基于STM32的智能鱼缸毕设任务书:新手入门实战指南与系统架构详解

最近在指导几位学弟学妹做毕业设计&#xff0c;发现“基于STM32的智能鱼缸”这个题目虽然经典&#xff0c;但新手在实际动手时&#xff0c;往往从第一步硬件选型就开始迷茫&#xff0c;到代码调试阶段更是问题频出。为了让大家少走弯路&#xff0c;我结合自己的项目经验&#x…...

Qwen3-Coder-Next-Base:800亿参数编码AI重磅登场

Qwen3-Coder-Next-Base&#xff1a;800亿参数编码AI重磅登场 【免费下载链接】Qwen3-Coder-Next-Base 项目地址: https://ai.gitcode.com/hf_mirrors/Qwen/Qwen3-Coder-Next-Base 导语&#xff1a;Qwen3-Coder-Next-Base正式发布&#xff0c;这款拥有800亿总参数的开源…...

xbee_lib嵌入式通信库架构与工程实践指南

1. XBee通信库&#xff08;xbee_lib&#xff09;深度解析与嵌入式工程实践XBee系列模块作为Digi公司推出的成熟Zigbee/802.15.4/Point-to-Multipoint无线通信解决方案&#xff0c;广泛应用于工业物联网、远程传感器网络、智能农业及楼宇自动化等场景。xbee_lib是一个面向嵌入式…...

Cuvil编译器避坑手册:97%新手踩过的5类IR转换陷阱,第4种会导致A100显存泄漏率飙升210%

第一章&#xff1a;Cuvil编译器在Python AI推理中的核心定位与价值Cuvil编译器并非传统意义上的通用语言编译器&#xff0c;而是专为Python生态中AI模型推理阶段深度优化的静态编译工具链。它在PyTorch、ONNX及自定义计算图之上构建轻量级中间表示&#xff08;CIR&#xff09;&…...

探索Comsol复现六角晶格光子晶体四重简并狄拉克点零折射率现象

comsol能带复现 六角晶格光子晶体四重简并狄拉克点零折射率 在光子晶体的奇妙世界里&#xff0c;六角晶格光子晶体因其独特的光学性质备受关注&#xff0c;尤其是其中的四重简并狄拉克点零折射率现象&#xff0c;更是充满了魅力。而Comsol作为一款强大的多物理场仿真软件&#…...

Buck - Boost双向充放电仿真模型探索

buck-boost仿真模型&#xff0c;可实现双向充放电&#xff08;附加说明文档&#xff09; 高压侧220V 低压侧24V左右&#xff08;由于电池充电&#xff0c;电压会上升&#xff0c;所以该电压会有些许波动&#xff09; 高压侧电容Cdc100uf 低压侧电容C10uf 滤波电感L2mH 开关频率…...

5分钟搞定OpenClaw对接Qwen3-32B:RTX4090D私有镜像一键部署指南

5分钟搞定OpenClaw对接Qwen3-32B&#xff1a;RTX4090D私有镜像一键部署指南 1. 为什么选择Qwen3-32BOpenClaw组合 上周我在调试一个自动化文档处理流程时&#xff0c;发现现有的7B模型经常无法理解复杂的文件操作指令。经过多次尝试&#xff0c;最终选择了Qwen3-32B作为OpenC…...