当前位置:网站首页>(oj)原地移除数组中所有的元素val、删除排序数组中的重复项、合并两个有序数组
(oj)原地移除数组中所有的元素val、删除排序数组中的重复项、合并两个有序数组
2022-08-05 05:17:00 【Captain林】
本篇文章计划用简单的代码方式向大家介绍题目所述的三个oj题的解题方法
目录
1. 原地移除数组中所有的元素val
题目如下
解法如下
int removeElement(int* nums, int numsSize, int val)
{
int left = 0;
for(int right=0; right<numsSize; right++)
{
if(nums[right] != val)//要改变数组
{
nums[left] = nums[right];
left++;
}
}
return left;
}
2. 删除排序数组中的重复项
题目如下
解法如下
int removeDuplicates(int* nums, int numsSize){
int src = 1;
int dst = 0;
while(src < numsSize)
{
if(nums[src] == nums[dst])
{
src++;
}
else
{
dst++;
nums[dst] = nums[src];
src++;
}
}
return dst+1;
}
3.合并两个有序数组
题目如下
解法如下
设end、end1、end2,当end1指向的值大于end2,先将end1的值放到end所在位置,反之亦然
注意:有可能会出现end1遍历完而end2没有遍历完的情况,这时可以额外增加一个循环使数组nums2的所有值复制到数组nums1上
void merge(int* nums1, int nums1Size, int m, int* nums2, int nums2Size, int n)
{
int end1 = m-1;
int end2 = n-1;
int end = m+n-1;
while(end1 >= 0 && end2 >= 0)
{
if(nums1[end1] > nums2[end2])
{
nums1[end--] = nums1[end1--];
}
else
{
nums1[end--] = nums2[end2--];
}
}
while(end2 >= 0)
{
nums1[end--] = nums2[end2--];
}
}
4.结语
看到这里,相信老铁们对如何解决上述oj题有了相应的了解。
我是计算机海洋的新进船长Captain_ldx,如果我的文章能对您有帮助的话,麻烦各位观众姥爷们点赞、收藏、关注,你们的每一次举手之劳都将化为船长的前进动力!
边栏推荐
猜你喜欢
CVPR 2022 | 70% memory savings, 2x faster training
【Pytorch学习笔记】10.如何快速创建一个自己的Dataset数据集对象(继承Dataset类并重写对应方法)
基于STM32F407的一个温度传感器报警系统(用的是DS18B20温度传感器,4针0.96寸OLED显示屏,并且附带日期显示)
Tensorflow踩坑笔记,记录各种报错和解决方法
十一、拦截器运行原理
关于存储IOPS你必须了解的概念
[After a 12] No record for a whole week
6k+ star,面向小白的深度学习代码库!一行代码实现所有Attention机制!
教你如何封装功能组件和页面组件
MSRA proposes extreme masking model ExtreMA for learning instances and distributed visual representations
随机推荐
OSPF网络类型
【22李宏毅机器学习】课程大纲概述
SQL (2) - join window function view
CH32V307 LwIP移植使用
十一、拦截器运行原理
深度学习系列(一)简介、线性回归与成本函数
2021电赛资源及经验总结
【shell编程】第二章:条件测试语句
【数据库和SQL学习笔记】5.SELECT查询3:多表查询、连接查询
【ts】typescript高阶:分布式条件类型
用GAN的方法来进行图片匹配!休斯顿大学提出用于文本图像匹配的对抗表示学习,消除模态差异!
Redis设计与实现(第二部分):单机数据库的实现
发顶会顶刊论文,你应该这样写作
【shell编程】第三章:函数
三、自动配置源码分析
【ts】typescript高阶:键值类型及type与interface区别
二、自动配置之底层注解
OSPF故障排除办法
单变量线性回归
CVPR best paper winner Huang Gao's team from Tsinghua University presented the first dynamic network review