首页 > 解决方案 > 在 C# 中“就地”修改数组?

问题描述

出现类似提示的leetCode 问题

给定一个数组“nums”和一个值“val”,就地删除该值的所有实例并返回新长度。

不要为另一个数组分配额外的空间,您必须通过使用 O(1) 额外内存就地修改输入数组来做到这一点。

元素的顺序可以改变。在新长度之外留下什么并不重要。

示例 1:

给定 nums = [3,2,2,3],val = 3,

您的函数应返回长度 = 2,其中 nums 的前两个元素为 2。

这个问题在 C#(网站上解决这个问题的支持语言之一)中有意义吗?您不能修改数组的长度,只能分配一个新数组。

标签: c#arrays.netalgorithm

解决方案


这个问题在 C# 中有意义吗? 是的。

[在 C# 中] 不能修改数组的长度,只能分配一个新数组。 绝对正确。所以重新阅读这个问题,看看你能做什么。我不想给出答案,因为很明显你会从自己解决这个问题中学到东西。所以在这里停止阅读;如果您需要提示,请继续阅读。

提示:关注这部分...

元素的顺序可以改变。在新长度之外留下什么并不重要。


推荐阅读