-
Notifications
You must be signed in to change notification settings - Fork 64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Citlalli Z- Cedar #33
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💫😎 Nice work Citlalli! I left just one suggestion down below. Let me know what questions you have.
🟢
@@ -15,47 +16,82 @@ def __init__(self): | |||
self.front = -1 | |||
self.rear = -1 | |||
self.size = 0 | |||
|
|||
|
|||
def enqueue(self, element): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✨
if self.size == 0: | ||
self.front = -1 | ||
self.rear = -1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would recommend moving this to after line 52. If the queue is empty to start, it should be caught by your if statement on line 41. However, it may be the case that after dequeueing an element, your queue is now empty and you want to reset the front
and rear
pointers.
|
||
self.store[self.rear] = element | ||
self.rear = (self.rear + 1) % self.buffer_size | ||
self.size += 1 | ||
|
||
def dequeue(self): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✨ Nice work! Just have one suggestion below ⬇️
self.front = (self.front + 1) % self.buffer_size | ||
self.size -= 1 | ||
|
||
return front_item | ||
|
||
def front(self): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✨
pass | ||
if self.front == -1: | ||
raise QueueEmptyException("Queue is empty") | ||
return self.store[self.front] | ||
|
||
|
||
def size(self): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✨
""" | ||
pass | ||
self.store.add_first(element) | ||
return None |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Functions return None
by default. If we aren't returning any other values, we usually prefer to let the function to implicitly return None
return None |
@@ -9,30 +9,19 @@ def __init__(self): | |||
self.store = LinkedList() | |||
|
|||
def push(self, element): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✨
""" | ||
pass | ||
self.store.add_first(element) | ||
return None | ||
|
||
def pop(self): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✨
pass | ||
if self.store.empty(): | ||
raise StackEmptyException("Stack is empty.") | ||
return self.store.remove_first() | ||
|
||
def empty(self): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✨
And False otherwise | ||
""" | ||
pass | ||
return self.store.empty() | ||
|
||
def __str__(self): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✨
Stacks and Queues
Thanks for doing some brain yoga. You are now submitting this assignment!
Comprehension Questions
OPTIONAL JobSimulation