题目:
给定一个数组和一个值,在原地删除与值相同的数字,返回新数组的长度。
元素的顺序可以改变,并且对新的数组不会有影响。
##样例:
给出一个数组 [0,4,4,0,0,2,4,4],和值 4
返回 4 并且4个元素的新数组为[0,0,0,2]
这个题…看上去确实不难
代码:
class Solution:
"""
@param: A: A list of integers
@param: elem: An integer
@return: The new length after remove
"""
def removeElement(self, A, elem):
# write your code here
i=0
while(i < len(A)):
if(A[i] == elem):
A.pop(i)
i -= 1
i +=1
return len(A)
这个东西,有一个问题,就是它的数组长度是改变的,我刚开始没注意到这一点,写的是for i in range(len(A)),就导致了后来的判断越界了,很尴尬,后来改成了while循环,唉…今天不行啊。
以后多想几种方法,今天懒了,就这样吧。
晚安。
本文介绍了一种在Python中从数组删除特定值的方法,并通过一个示例进行了演示。该方法使用了while循环来遍历数组并删除匹配项,同时讨论了数组长度变化时循环条件的选择。

被折叠的 条评论
为什么被折叠?



