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;
}

总结

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

相关推荐
jinzhe4 小时前
终端bash&zsh中实现基于前缀的历史命令搜索
后端
用户8181870627464 小时前
二、多线程并发篇
后端·程序员
Zane19944 小时前
ThreadLocal 与 BlockingQueue:线程本地变量的内存泄漏原理,以及阻塞队列怎么选?
java·后端
橘色的喵4 小时前
一块 RISC-V MCU 是怎么启动的: 内存保护、中断与从 Flash 直接执行
后端
长栎4 小时前
JDBC 用了 30 年的 Bridge 模式,多数人以为它只是策略模式换了层皮
后端
Ai拆代码的曹操4 小时前
排查 3 小时,问题竟在 Dubbo 路由规则:一个 force 的坑
后端
无责任此方_修行中4 小时前
换个版本号就能升级?可没那简单:pnpm 11 升级踩坑记
javascript·后端·npm
SelectDB4 小时前
洋钱罐基于 SelectDB 实现 Hive 数据湖透明加速:查询 P95 从 300 秒降至 20 秒的完整实践
后端
Chen_LSN5 小时前
C语言——深度理解指针(4)
后端
用户638982245895 小时前
自定义注解@SyncNeo4j实现增删改导入时自动同步数据节点和关系到Neo4j
后端