Python中文
首页
教程
问答
标签
搜索
登录
注册
循环队列Python
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我试图在Python中创建一个循环队列,以便在到达数组中的最后一个元素时指向头部。我正在研究排队方法,我遇到了一些问题。我正在尝试使用一个大小为4的数组,并且能够将值排队到第4个点,但是当它执行elif语句时,我收到这个错误。</p> <p>TypeError:不支持+的操作数类型:“Node”和“int”</p> <p>有什么想法吗?</p> <pre><code>class Node(object): def __init__(self, item = None): self.item = [None] * 4 self.next = None self.previous = None class CircularQueue(object): def __init__(self): self.length = 0 self.head = None self.tail = None def enqueue(self, x): newNode = Node(x) newNode.next = None if self.head == None: self.head = newNode self.tail = newNode elif self.length < 4: self.tail.next = newNode newNode.previous = self.tail self.tail = newNode else: self.tail = (self.tail + 1) % 4 self.length += 1 def dequeue(self): if self.count == 0: print ("The Queue is empty!") self.count -= 1 return self.item.pop() def size(self): return self.length </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>你的问题是:</p> <pre><code>self.tail + 1 </code></pre> <p>但在之前,您将tail初始化为一个节点:</p> <pre><code>self.tail = newNode </code></pre> <p>这就是错误。</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
想用靓汤抢夺价值
9 回答
想申请一份符合工作描述的简历吗
8 回答
想画网格,Python
9 回答
想白痴化我的Python战舰
6 回答
想看两列日期,但只上
4 回答
想看看我写的这个脚本读一个Fortran二进制fi吗
1 回答
想知道Django是如何实现ORM查询优化的吗
6 回答
想知道GeoDjango和地图服务吗
7 回答
想知道Image.resize操作在PIL文件中的详细工作方式吗
1 回答
想知道matplotlib pyplot为什么不调整边距
8 回答
想知道matplotlib颜色的颜色代码吗
1 回答
想知道pd.factorize,pd.get_dummies,sklearn.preprocessing.labeencoder和OneHotEncod之间的区别
2 回答
想知道property()在python中的实际用法吗
5 回答
想知道pyodidejs是如何工作的吗?
7 回答
想知道pyparsing==2.0.1的已完成处理依赖关系
10 回答
想知道ScikitLearn中的编码算法吗
2 回答
想知道VTK 5.04和VTK 5.4.2的vtkMassProperties差异吗
10 回答
想知道一个特定字符在一个特定句子中出现的次数吗
3 回答
想知道两个不同子集的重叠中有多少个对象吗
2 回答
想知道为什么is_素数函数的结果不正确吗
6 回答