[数组]移除元素

news/2025/1/12 1:02:46/

我用好长时间才写出来,看了题解感觉他思路贼好

一、leecode题目链接

力扣

二、题解

数组中移除元素并不容易! | LeetCode:27. 移除元素_哔哩哔哩_bilibili

三、代码

1、老师的

思路

1)用快慢指针的思路来解决问题

 slow指针:需要更新的下标位置

 fast指针:指向新数组(删除目标值之后)里需要的元素

class Solution {public int removeElement(int[] nums, int val) {int slow=0;for(int fast=0;fast<=nums.length-1;fast++){if(nums[fast]!=val){nums[slow++]=nums[fast];}}return slow;}
}

2、我的

看完题解我发现

1)没必要设置成-1,直接按照val值查找是一样的

2)整体思路不行,我这边是两头找,前面找的是要删掉的元素,后面找的是不等于要删掉的元素值的位置,然后两者交换

class Solution {public int removeElement(int[] nums, int val) {int res_num=nums.length;for(int i=0;i<=nums.length-1;i++){if(nums[i]==val){nums[i]=-1;res_num--;}}int i=0; //当前元素索引int after=nums.length-1;//末尾不为-1的值while(i<=nums.length-1 && i<after){if(nums[i]==-1){while(nums[after]==-1&&after>i){after--;}if(nums[after]!=-1 ){int tmp=nums[i];nums[i]=nums[after];nums[after]=tmp;}}i++;}return res_num;}
}


http://www.ppmy.cn/news/869738.html

相关文章

【Jeston Nano】刷机

Jeston Nano刷机 有两种方法 1.使用SD卡 2.使用SDK Manager 使用SD卡 1.下载镜像 JetPack JetPack存档 下载4.6版本的 找到Nano 2.烧写SD image 下载balenaetcher&#xff0c;链接&#xff1a;balenaetcher 选择合适的版本。 windows版本的可以直接下载安装 选择镜像…

Shuttle ESB实现消息推送

ESB全称Enterprise Service Bus&#xff0c;即企业服务总线。它是传统中间件技术与XML、Web服务等技术结合的产物。 ESB的出现改变了传统的软件架构&#xff0c;能够提供比传统中间件产品更为便宜的解决方式。同一时候它还能够消除不同应用之间的技术差异&#xff0c;让不同的应…

usaco Shuttle Puzzle

有个2*N1的线性的棋盘&#xff0c;开始时最左边全是白&#xff0c;右边全是黑&#xff0c;中间一个空格。目标是黑白全部互换。求输出最少步数的操作的棋子的下标。并且要字典序最小的。 980ms险过。 不判重700ms能过。我居然多此一举的用map判重。 /* ID: modengd1 PROG: shut…

阿里云Elasticsearch搜索服务框架Shuttle

随着阿里云生态的蓬勃发展&#xff0c;我们看到越来越多的开发者开始基于ECS体系开发自己的分布式应用。的确&#xff0c;阿里云ECS提供的弹性云计算服务、多样化的规格配置支持、安全网络隔离等多种灵活便利的一站式服务&#xff0c;大大降低了用户开发新应用的技术门槛与成本…

[Usaco2009 Feb]庙会捷运Fair Shuttle

Description 公交车一共经过N&#xff08;1<N<20000&#xff09;个站点&#xff0c;从站点1一直驶到站点N。K&#xff08;1<K<50000)群奶牛希望搭乘这辆公交车。第i群牛一共有Mi&#xff08;1<Mi<N)只. 他们希望从Si到Ei去。 公交车只能座C&#xff08;1&…

Usaco Training Section 4.4 Shuttle Puzzle

要将W...W_B...B变成B...B_W...W&#xff0c;每次可以1、交换空格和相邻格&#xff1b;2、你可以把一个棋子跳过一个(仅一个)与它不同色的棋子到达空格。用最少步数&#xff0c;打印出每次移动的棋子&#xff08;最小的一组解&#xff09; 直接dfs&#xff0c;要优化。很明显W…

MapReduce中Shuttle过程的理解

MapReduce中Shuttle过程的理解--转自&#xff1a;http://langyu.iteye.com/blog/992916 Shuffle过程是MapReduce的核心&#xff0c;也被称为奇迹发生的地方。要想理解MapReduce&#xff0c; Shuffle是必须要了解的。我看过很多相关的资料&#xff0c;但每次看完都云里雾里的绕着…