P217. 移除数组中指定数字

leetcode 27 lintcode 172 双指针 数组 讨论

温馨提示:您没有权限查看当前视频。 立即购买观看视频

描述

这个题目说的是,给你一个整数数组和一个数字,你要就地(in place)移除数组中等于给定数字的所有元素。然后返回移除指定数字后的子数组长度。

比如说,给你的整数数组是:

[1, 4, 2, 0, 2, 8]

你要移除的数字是 2。

在这个数组中就地移除数字 2 后,得到:

[1, 4, 0, 8, _, _]

因此,你要返回这个子数组的长度 4。

原数组的长度是 6,所以子数组 1, 4, 0, 8 后面实际上还有两个位置。但这两个位置上放什么数字都无所谓。因为根据返回的长度 4,就可以确定目标子数组的边界。

相关视频:移除有序数组中的重复元素

关于 AlgoCasts

AlgoCasts 旨在用心做好每一个算法讲解视频。每个视频包含两个部分:题目的剖析讲解以及编码,力求在讲解清楚到位的基础上,尽可能地保持视频精简短小,让大家可以在碎片时间里进行学习,并收获这些算法题背后的思想与乐趣。