Skip to content

Conversation

@elisonmcginley
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

@CheezItMan CheezItMan left a comment

Choose a reason for hiding this comment

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

Nice work Alison, you hit the learning goals here. Well done.

Comment on lines +26 to +35
if self.size == self.buffer_size:
raise QueueFullException('Queue is full')

if self.front == -1:
self.front = 0

self.rear = (self.rear + 1) % self.buffer_size
self.size += 1

self.store[self.rear] = element

Choose a reason for hiding this comment

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

👍

Comment on lines +43 to +55
if self.size == 0:
raise QueueEmptyException('Queue is empty')
if self.size == 1:
self.rear = -1

value = self.store[self.front]
self.store[self.front] = None

self.front = self.front + 1 % self.buffer_size

self.size -= 1

return value

Choose a reason for hiding this comment

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

👍

Comment on lines +63 to +66
if self.size == 0:
return QueueEmptyException('Queue is empty')

return self.front

Choose a reason for hiding this comment

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

👍

Comment on lines +87 to +93
values = []

for i in range(self.front, self.front+self.size):
i %= self.buffer_size
values.append(self.store[i])

return str(values)

Choose a reason for hiding this comment

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

👍 Nice

self.store = LinkedList()

def push(self, element):
""" Adds an element to the top of the Stack.

Choose a reason for hiding this comment

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

👍 Stack looks good!

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