Я иду через код, чтобы написать круговую очередь в python
class CircularQueue:
# constructor for the class
# taking input for the size of the Circular queue
# from user
def __init__(self, maxSize):
self.queue = list()
# user input value for maxSize
self.maxSize = maxSize
self.head = 0
self.tail = 0
# add element to the queue
def enqueue(self, data):
# if queue is full
if self.size() == (self.maxSize - 1):
return("Queue is full!")
else:
# add element to the queue
self.queue.append(data)
# increment the tail pointer
self.tail = (self.tail+1) % self.maxSize
return True
, и часть, которая меня смущает, - это self.size () в методе "enqueue"
Я просмотрел python документы и не вижу функции size (), только ссылки на size () в numpy.
Обычно вы хотите вызвать len () для размер списка, но я знаю, что вы не можете сделать self.len ()
какая-либо ясность / объяснение синтаксиса и логики c, стоящие за написанием чего-то подобного, было бы полезно!