Data Structures Flashcards

1
Q

What does the acronym LIFO mean?

A

It stands for “last in first out” which means that the last thing ‘push’ed onto the stack is the first thing that can be ‘pop’ed out.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What methods are available on a Stack data structure?

A

.pop() - removes the top value from the stack and returns it
.push(value) - adds a value to the “top” of the stack
.peek() - returns the “top” value of the stack without removing it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What must you do to access the value at an arbitrary point in a stack (not just the “top”)?

A

Use .pop() until you get to the arbitrary point in the stack and either .peek() it or .pop() it to access the value.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What does the acronym FIFO mean?

A

It stands for “first in first out” which means that the first thing ‘enqueue’d onto the queue is the first thing that can be ‘dequeue’d out.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What methods are available on a Queue data structure?

A

.enqueue()
.dequeue()
.peek()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What must you do to access the value at an arbitrary point in a queue (not just the “front”)?

A

Use .dequeue() until you get to the arbitrary point in the stack and either .peek() it or .dequeue() it to access the value.
You can also move the first value to the back of the queue over and over until you get to the point in the queue you want to access by using queue.enqueue(queue.dequeue())

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

How are linked lists different from an array?

A

Linked lists are sequential access (like a queue), not random access (like an array).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How would you access an arbitrary node in a linked list (not just the “head”)?

A

In order to go to a specific place in the list, you have to start at the beginning, then jump from node to node until you get there. However, unlike a queue, a linked list doesn’t need to be mutated to scan its contents.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly