苹果就叫不呐呐 2022-09-28 20:07 采纳率: 0%
浏览 9

list index out of range不知道为什么报错

list index out of range 明明没有越界啊,为什么会报错

之后把程序中

  while fast <= len(nums):


改为

  while fast < len(nums):


就又不报错了

完整代码如下,求解答
class Solution(object):
    def removeDuplicates(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        if not nums:
            return 0

        slow = 0
        fast = 0
        while fast <= len(nums):
            if nums[fast] != nums[slow]:
                slow += 1
                nums[slow] = nums[fast]
                fast += 1
            else:
                fast += 1 

        return slow+1

  • 写回答

2条回答 默认 最新

  • 快乐鹦鹉 2022-09-28 20:11
    关注

    fast当然不能等于数组长度。因为数组下标范围是从0到len(nums)-1。你等于len(nums-1)就下标越界了

    评论
  • SP12345678902 2022-09-30 11:29
    关注

    楼主是初学者吧

    评论

报告相同问题?

问题事件

  • 创建了问题 9月28日

悬赏问题

  • ¥15 如何利用闲置机械硬盘变现
  • ¥15 信号处理中的凸优化问题
  • ¥15 arm虚拟机无法和物理机互通
  • ¥15 如何在此代码上增加一个统计学生生源的功能?(语言-c语言)
  • ¥15 Android导航条遮盖异常
  • ¥15 计算机网络技术基础问题
  • ¥15 设置mac系统只能访问指定网站
  • ¥15 西门子博途 s7 1200控制三台步进电机
  • ¥15 基于非参数的方向距离函数求污染物影子价格(有偿)
  • ¥15 vue+element 生成table