Stacks and Queues

What is a Stack
-
A stack is a data structure that consists of
Nodes. EachNodereferences thenextNode in the stack, but does not reference its previous. Push- Nodes or items that are put into the stack are pushedPop- Nodes or items that are removed from the stack are popped. When you attempt to pop an empty stack an exception will be raised.Top- This is the top of the stack.Peek- When you peek you will view the value of the top Node in the stack. When you attempt to peek an empty stack an exception will be raised.IsEmpty- returns true when stack is empty otherwise returns false.
Stacks follow these concepts:
FILO: First In Last Out-
This means that the first item added in the stack will be the last item popped out of the stack.
LIFO: Last In First Out.- This means that the last item added to the stack will be the first item popped out of the stack.
Stack Visualization
- as below the top is the first node in the stack and when you
popyoupopthe currenttopand set the nexttopastop.next.
What is a Queue
-
what you need to know for queue :
Enqueue- Nodes or items that are added to the queue.Dequeue- Nodes or items that are removed from the queue. If called when the queue is empty an exception will be raised.Front- This is the front/first Node of the queue.Rear- This is the rear/last Node of the queue.Peek- When you peek you will view the value of the front Node in the queue. If called when the queue is empty an exception will be raised.-
IsEmpty- returns true when queue is empty otherwise returns false. -
Queues follow these concepts:
FIFO: First In First Out-
This means that the first item in the queue will be the first item out of the queue.
LILO:Last In Last Out- This means that the last item in the queue will be the last item out of the queue.
Queues Visualization
- as below is how the queues is strcutured.