【CT】LeetCode手撕—88. 合并两个有序数组
目录
- 题目
- 1- 思路
- 2- 实现
- ⭐88. 合并两个有序数组——题解思路
- 2- ACM实现
题目
- 原题连接:88. 合并两个有序数组
1- 思路
模式识别
- 模式1:两个有序数组合并 ——> 双指针
- 模式2:返回结果填充到 nums1[m+n] ——> 需要开辟新的数组空间 sorted[m+n] 最后结果赋值给 nums1
思路
- 1.定义双指针:分别指向
nums1
和nums2
- 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实现 题目 原题连接:88. 合并两个有序数组 1- 思路 模式识别 模式1:两个有序数组合并 ——> 双指针模式2:返回结果填充到 nums1[mn] ——> 需要开辟新的数组空间 …...
深入分析 Android BroadcastReceiver (二)
文章目录 深入分析 Android BroadcastReceiver (二)1. 深入理解 BroadcastReceiver 的高级使用和优化2. 有序广播(Ordered Broadcasts)2.1 实现有序广播 3. 粘性广播(Sticky Broadcasts)3.1 使用粘性广播 4. 本地广播(…...
Linux常⽤服务器构建-ssh和scp
目录 1.ssh <1>ssh介绍 <2>安装ssh A.安装ssh服务器 B.远程登陆 <3>使⽤ssh连接服务器 2.scp 本地⽂件复制到远程: 本地⽬录复制到远程: 远程⽂件复制到本地: 远程⽬录复制到本地: 1.ssh <1>…...
《QT实用小工具·七十》openssl+qt开发的P2P文件加密传输工具
1、概述 源码放在文章末尾 该项目实现了P2P的文件加密传输功能,具体包含如下功能: 1、 多文件多线程传输 2、rsaaes文件传输加密 3、秘钥随机生成 4、断点续传 5、跨域传输引导服务器 项目界面如下所示: 接收界面 发送界面 RSA秘钥生成…...
短链接生成器排名前三!长链接转化成短链接工具有哪些?
在现今的网络营销环境中,短链接的应用越来越广泛。它不仅能简化长链接,提高分享效果,还能提升企业品牌形象和用户体验。于是,市场上涌现出众多短链接生成工具。本文将为您揭秘短链接生成器排名前三的产品,帮您找到最适…...
Vue50-mixin混入
一、为什么要使用 mixin混入 两个组件共享一个配置。 二、使用 mixin混入 2-1、创建一个混合js文件 2-2、引入混合js文件 1、局部混合 在每个组件中都引入混合js文件 注意: 混合就是复用配置,vm实例中的所有的配置项,都能在混合.js文件中写…...
Java创建线程的方式
继承Thread类 这是创建线程的基本方式之一。你需要创建一个新的类,该类继承自Thread类,并重写run()方法。然后,你可以创建这个类的一个实例并调用它的start()方法来启动新线程。 public class MyThread extends Thread { Override public vo…...
C# 程序结构
C# 程序结构 C#(读作“C-sharp”)是一种由微软开发的高级编程语言,它是.NET框架的一部分。C# 设计用于现代软件开发,具有强大的类型系统、丰富的库支持和面向对象的特性。本文将详细介绍C#程序的基本结构,包括其语法、类型系统、控制结构、类和对象等。 C# 程序的基本结…...
【Linux】使用 iptables 验证访问HDFS 所使用到的端口
目录 编辑 一、实操背景 二、iptables 简介 三、模拟操作 一、实操背景 背景: 在客户有外网的服务器需要访问内网大数据集群HDFS,使用iptable模拟测试需要开放的端口。 二、iptables 简介 具体介绍看文章: 【Linux】Iptables 详解与实战…...
工程设计问题---多盘离合器制动器设计问题
这个问题的主要目的是使多片式离合器制动器的质量最小化。在这个问题中,使用了五个整数决策变量,它们是内半径(x1)、外半径(x2)、盘厚度(x3)、致动器的力(x4)…...
triton矩阵乘以及缓存优化
这里triton.cdiv(M, META[BLOCK_SIZE_M]) * triton.cdiv(N, META[BLOCK_SIZE_N]),所以grid的形状是一维的。 观察函数内部 pid tl.program_id(axis0),因为grid是一维的,所以这里就是总块数,我们假设实际A*BC, A&…...
springboot 搭建一个 测试Kafka 集群连通性demo
废话不多说直接上代码: 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 动态表头和数据填充
创作动态表头和数据填充的前端应用:使用 Ant Design Vue 在现代前端开发中,动态表格是一个常见而且非常有用的功能。Ant Design Vue作为一个优秀的UI组件库,为开发者提供了丰富的组件和API来实现复杂的前端需求,包括动态表头和数…...
在Spring Cloud项目中集成Springdoc OpenAPI生成OpenAPI 3文档的详细解析
在Spring Cloud项目中集成Springdoc OpenAPI生成OpenAPI 3文档的详细解析 在Spring Cloud项目中生成OpenAPI 3文档,可以使用Springdoc OpenAPI。Springdoc OpenAPI提供了一种简单的方法来生成符合OpenAPI 3规范的API文档。以下是详细的步骤和解析,展示如…...
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,基本使用,可参考 此文 想法 1、点击按钮导出,弹出选择保存文件夹 2、保存成功后,自动打开保存后文件夹窗口并关闭窗口 实现 获取保存文件夹路径࿰…...
curl命令行发送post/get请求
文章目录 curl概述post请求get请求 curl概述 curl 是一个命令行实用程序,允许用户创建网络请求curl 在Windows、 Linux 和 Mac 上皆可使用 post请求 一个简单的 POST 请求 -X:指定与远程服务器通信时将使用哪种 HTTP 请求方法 curl -X POST http://ex…...
Redis 分片集群
一. 前言 前面文章介绍了主从集群和哨兵模式。其中主从集群可以通过读写分离的方式解决高并发场景下的读问题;而在主节点出现故障时,又可以通过哨兵模式的自动选举来实现高可用。 Redis 主从集群 && 哨兵模式 二. Redis 分片集群 2.1 分片集群…...
学习分享-Callable 和 Runnable 任务
前言 顺带回顾学习一下Callable 或 Runnable 任务 Callable 和 Runnable 任务 Callable 和 Runnable 是 Java 中用于定义任务的接口,它们主要用于并发编程,允许任务在独立的线程中运行。 Runnable 任务 Runnable 是一个函数式接口,只包含…...
three.js 基础01
1.场景创建 Scene() 2.常用形状集几何体「Geometry」[可设置长宽高等内容,如:new THREE.BoxGeometry(...)] 长方体 BoxGeometry圆柱体 CylinderGeometry 球体SphereGeometry圆锥体ConeGeometry矩形平面 PlaneGeometry 圆面体 CircleGeo…...
使用file.transferTo()做Java文件复制,目标文件存在时,是抛异常还是覆盖写入?
背景 最近在做一个项目,在服务端涉及到文件的复制操作,于是想到了 Java 中 FileInputStream 类的 transferTo() 方法。这里简单记录一下用法,另外,如果目标文件已经存在,该如何处理这种情况呢?是出现异常还…...
Python:线性查找法
什么是线性搜索算法? 线性搜索算法是一种基本的搜索技术,用于查找目标元素是否存在于一个集合(通常是列表或数组)中。该算法的工作原理非常简单:它从集合的第一个元素开始逐个检查,直到找到目标元素或遍历完…...
IDEA 设置主题、背景图片、背景颜色
一、设置主题 1、点击菜单 File -> Settings : 点击 Settings 菜单 2、点击 Editor -> Color Scheme -> Scheme, 小哈的 IDEA 版本号为 2022.2.3 , 官方默认提供了 4 种主题: Classic Light (经典白) ;Darcula (暗黑主…...
【elementui源码解析】如何实现自动渲染md文档-第三篇
目录 1.前言 2.webpack.demo.js 3.markdown文档 4.fence.js 1)tokens 2)::: 3) 5.containers.js 1)markdown-it-container 2)md.use() 3)代码逻辑 4)containers小结 6.congfig.js …...
this指针如何使C++成员指针可调用
在C中,this指针是一个隐藏的指针,指向当前对象实例。它在成员函数中自动可用,用于访问该对象的成员变量和成员函数。理解this指针的工作原理有助于理解为什么指向成员的指针是可调用的。在本文中,我们将详细探讨this指针的概念&am…...
Redis数据结构之字符串(sds)
Redis数据结构之字符串(sds) redisObject 定义如下 struct redisObject {unsigned type:4; //数据类型unsigned encoding:4; /*encoding 编码格式,及存储数据使用的数据结构,同一类型的数据,Redis 会根据数据量,占用内…...
tokenization(二)子词切分方法
文章目录 概述BPE构建词表词元化代码实现 WordPieceUnigram估算概率(E)删除词元(M) 参考资料 概述 接上回,子词词元化(Subwords tokenization)是平衡字符级别和词级别的一种方法,也…...
慈善组织管理系统设计
一、用户角色与权限 慈善组织管理系统设计首先需要考虑的是用户角色与权限的划分。系统应明确区分不同的用户角色,如管理员、项目负责人、财务人员、捐赠者等,并为每个角色分配相应的权限。管理员应拥有最高的权限,能够管理系统全局…...
大疆Pocket3手持记录仪格式化恢复方法
大疆Pocket系列是手持类产品,此类产品处理过不少像Pocket、Pocket2、Pocket3基本上涉及Pocket全系列,今天来看一个Pocket3误格式化之后的恢复方法。 故障存储: 120G存储卡 /文件系统:exFAT 故障现象: 在备份视频数据时由于操作失误导致初…...
Mybatis的面试题
1. 什么是一级缓存什么是二级缓存? MyBatis是一款优秀的持久层框架,它提供了一级缓存和二级缓存来提高数据库访问性能。 一级缓存 一级缓存是指在同一个SqlSession中进行的缓存。当MyBatis执行查询时,查询结果会被缓存在SqlSession的内存中…...
优化网站和网站建设/昆山网站建设公司
CMPSC-121作业代做、代写C/C语言作业、代做Programming Techniques作业、代写C/C程序设计作业CMPSC-121: Intro to Programming Techniques (Fall 2018)Project 2 - Fall 2018 (100 points)Due Sunday, October 28 at 11:59pmObjectivesAfter this project, students should be…...
网站开发要多钱/企业网站推广的方法有
学了下bitset用法,从网上找的一些bitset用法,并从中调出一些常用的用法。 构造函数bitset<n> b; b有n位,每位都为0.参数n可以为一个表达式.如bitset<5> b0;则"b0"为"00000";bitset<n> b(unsigned long…...
网站开发架构mvc/优化推广方案
花火网消息,如果你有4000元左右的预算,你会选择什么国产手机呢?近年来一加和华为其实在海外市场都得难分难解,尤其是今年一加7TPro和华为mate30Pro,更是引发了北美市场消费者的抢购,那么究竟这两款手机谁更好一些呢?…...
做3dh春丽网站叫什么/今日头条新闻大事
1. 使用简单事件处理器 可以用几种不同的方式处理事件。最直接的方式是用事件属性创建一个简单事件处理器(simple event handler)。元素为它们支持的每一种事件都定义了一个事件属性。举个例子,onmouseover事件属性对应全局事件mouseover&…...
连云港网站关键字优化如何/想做电商应该怎么入门
注:本账号为今日头条官方签约账号,严禁任何形式的商业转载。文丨火焱谈到手工木匠,或者说手工艺人,目前全网最火热的炸子鸡当属“手工耿”这位少侠了。此少侠依靠脑洞大开的设计和创意,被国内媒体盛赞为“无用发明家”…...
免费用的云服务器/seo网站排名软件
在这里插入代码片45个Vue开源项目汇总在过去的一年里,我们比较了将近 12,000 个 Vue.js 开源项目和库,从中挑选了最好的 45 个 这些项目和库可以分为 3 类:1.用户界面(1~19)2.Vue.js 工具(20~36)3.项目(37~45)这是一个非常好的清单,精心挑选了 2018 年 1 月至 12 月期…...