LeetCode | 27.移除元素


这道题的思路和26题一模一样,由于要在元素组中修改,我们可以设置一个index表示目前要修改原数组的第几位,由于遍历,访问原数组永远会在我们修改数组之前,所以不用担心数据丢失的问题,一次遍历数组,index设为0,若此时遍历到的数等于val,则跳过,若不等于val,则把这个数放进nums[index]里,再index++,直至遍历完整个数组返回index即可

python 复制代码
class Solution(object):
    def removeElement(self, nums, val):
        """
        :type nums: List[int]
        :type val: int
        :rtype: int
        """
        index = 0
        for i in range(len(nums)):
            if nums[i] != val:
                nums[index] = nums[i]
                index += 1
        return index
相关推荐
Han.miracle14 小时前
数据结构与算法--007三数之和(medium)
算法·leetcode·排序算法
听风吹等浪起14 小时前
机器学习算法:随机梯度下降算法
人工智能·深度学习·算法·机器学习
落羽的落羽14 小时前
【C++】哈希扩展——位图和布隆过滤器的介绍与实现
linux·服务器·开发语言·c++·人工智能·算法·机器学习
仁桃仁呀14 小时前
160.相交链表
数据结构·算法·链表
普密斯科技14 小时前
从点测量到解决方案:光谱共焦技术如何集成于运动平台,实现3D轮廓扫描与透明物体测厚?
人工智能·算法·计算机视觉·3d·集成测试·测量
fish_xk14 小时前
类和对象(二)
开发语言·c++·算法
良木生香14 小时前
【数据结构-初阶】详解栈和队列(1)---栈
c语言·数据结构·算法·蓝桥杯
小威程序员14 小时前
算法设计与分析
算法
s090713614 小时前
FPGA中CIC设计注意事项
算法·fpga开发·cic滤波器
tang&14 小时前
双指针算法:化繁为简的优雅解法
数据结构·c++·算法