Skip to content

Conversation

Kbhlee2121
Copy link

Stacks and Queues

Thanks for doing some brain yoga. You are now submitting this assignment!

Comprehension Questions

Question Answer
What is an ADT?
Describe a Stack
What are the 5 methods in Stack and what does each do?
Describe a Queue
What are the 5 methods in Queue and what does each do?
What is the difference between implementing something and using something?

OPTIONAL JobSimulation

Question Answer
Did you include a sample run of your code as a comment?

Copy link

@kyra-patton kyra-patton left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✨🌸 Very nice work Kristin. I left some suggestions as to how you might simplify your stacks implementation, but your stack and queue look solid. Let me know what questions you have.

🟢

@@ -23,39 +23,75 @@ def enqueue(self, element):
In the store are occupied
returns None
"""
pass
if self.size == self.buffer_size:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

self.store[self.rear] = element
# reassigns rear usng mod
self.rear = (self.rear + 1) % self.buffer_size
self.size += 1

def dequeue(self):

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

self.front = (self.front + 1) % self.buffer_size
self.size -= 1

return front

def front(self):

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pass
if self.empty():
return None
return self.front


def size(self):

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.



def size(self):
""" Returns the number of elements in
The Queue
"""
pass
return self.size

def empty(self):

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pass
if self.size == 0:
return True
return False

def __str__(self):

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -12,7 +12,13 @@ def push(self, element):
""" Adds an element to the top of the Stack.
Returns None
"""
pass

self.store.add_last(element)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

# self.store.add_first(element)
# return
# self.store.tail.next = element
# self.store.tail = element

def pop(self):
""" Removes an element from the top

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✨ This will work, however you could also take advantage of the remove_last method in the LinkedList class






def empty(self):

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✨ Again, this will work, however you could take advantage of LinkedList's empty method

if not self.store.head:
return True
return False


def __str__(self):

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

😎 Again, this works, but take a look at LinkedList's str method

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants