From 7e40ca15da049da8732b481792385e07569f9a7b Mon Sep 17 00:00:00 2001 From: marina <138340846+bt3gl-cryptographer@users.noreply.github.com> Date: Mon, 7 Aug 2023 19:59:38 -0700 Subject: [PATCH] Update and rename circular_queue_list.py to queue_list.py --- .../{circular_queue_list.py => queue_list.py} | 41 +++++++++++-------- 1 file changed, 24 insertions(+), 17 deletions(-) rename queues/{circular_queue_list.py => queue_list.py} (59%) diff --git a/queues/circular_queue_list.py b/queues/queue_list.py similarity index 59% rename from queues/circular_queue_list.py rename to queues/queue_list.py index a104470..f650535 100644 --- a/queues/circular_queue_list.py +++ b/queues/queue_list.py @@ -5,52 +5,59 @@ class Node: def __init__(self, value, next=None): + self.value = value self.next = next -class CircularQueue: +class Queue: - def __init__(self, k: int): - self.capacity = k + def __init__(self, size): + + self.size = size self.count = 0 self.head = None self.tail = None def enqueue(self, value: int) -> bool: - if self.count == self.capacity: + + if self.is_full(): return False - if self.count == 0: - self.head = Node(value) - self.tail = self.head + + if self.is_empty(): + self.head = self.tail = Node(value) + else: - new_node = Node(value) - self.tail.next = new_node - self.tail = new_node + self.tail.next = Node(value) + self.tail = self.tail.next + self.count += 1 + return True def dequeue(self) -> bool: - if self.count == 0: + + if self.is_empty(): return False + self.head = self.head.next self.count -= 1 + return True def front(self) -> int: - if self.count == 0: - return -1 - + if self.is_empty(): + return False return self.head.value def rear(self) -> int: - if self.count == 0: - return -1 + if self.is_empty(): + return False return self.tail.value def is_empty(self) -> bool: return self.count == 0 def is_full(self) -> bool: - return self.count == self.capacity + return self.count == self.size