LeetCode第27题移除元素

继续打卡算法题,今天学习的是LeetCode的第27题移除元素,这道题目是道简单题。算法题的一些解题思路和技巧真的非常巧妙,每天看一看算法题和解题思路,我相信对我们的编码思维和编码能力有一些帮助。

分析一波题目

这道题也比较简单,同样使用两个指针就可以搞定,一个指针记录不等于val的数据下标,一个指针用于遍历数组。

编码解决

go 复制代码
func removeElement(nums []int, val int) int {
    var i int = 0;
    var index int = 0;
    //不创建新数组,技巧:将不等于目标值的数据往数组前面摞
    for i < len(nums)  {
        if nums[i] != val {
            nums[index] = nums[i];
            index++;
        }
        i++;
    }
    return index;
}

总结

双指针的用法在数组遍历上确实提供了很多便利性,是一个值得收藏的编码小技巧。

相关推荐
NiNg_1_2341 小时前
SpringBoot整合SpringSecurity实现密码加密解密、登录认证退出功能
java·spring boot·后端
Chrikk3 小时前
Go-性能调优实战案例
开发语言·后端·golang
幼儿园老大*3 小时前
Go的环境搭建以及GoLand安装教程
开发语言·经验分享·后端·golang·go
canyuemanyue3 小时前
go语言连续监控事件并回调处理
开发语言·后端·golang
杜杜的man3 小时前
【go从零单排】go语言中的指针
开发语言·后端·golang
customer084 小时前
【开源免费】基于SpringBoot+Vue.JS周边产品销售网站(JAVA毕业设计)
java·vue.js·spring boot·后端·spring cloud·java-ee·开源
Yaml45 小时前
智能化健身房管理:Spring Boot与Vue的创新解决方案
前端·spring boot·后端·mysql·vue·健身房管理
小码编匠6 小时前
一款 C# 编写的神经网络计算图框架
后端·神经网络·c#