目录 一、 Pop函数报错 2 1 问题 2 2 分析 3 3 解决办法 3 二、Notype has no attribute next 4 问题 4 一、 Pop函数报错 1 问题 Pop函数报错 用上面这段代码发现程序运行过程中报了以下的错误 2 分析 Stack是一个栈,栈有自己的大小,当栈中的元素pop完的时候,再执行pop(), 就会报错,首先要明白Pop()放在循环中的是, 1) 而循环的条件时 k!=0, 2) 每当k减去1的时候,执行一次pop操作, 3) 循环退出的前提条件时k=0 4) 那么假设栈中的栈的长度是j 那么存在三种情况  J=k 当j=k的时候,退出循环的时候,栈刚好为空  j>k 当j>k的时候,在栈为空前,就退出了循环,不会发生pop异常  j<k 这个时候,栈中的元素已经为空了,pop()出栈操作就会报错 3 解决办法 当j<k的时候,说明链表的长度小于k,既然链表的长度都小于k了, 取不出来,返回空链表 二、 Notype has no attribute next 1. 问题 ttributeError: 'NoneType' object has no attribute 'next' 2. 分析 怎么返回空的链表回去,这里 3. 解决问题 参考别人的代码 利用ListNOde类去创建空的节点 4. 尝试 i. 尝试用ListNode类去初始化一个空的链表,失败了 报错意思是参数不能为None,必须为Number ii.
点赞
牛客网
牛客企业服务