1.4.2 Flashcards
Which of the following data structures are ordered?
List
Record
Tuple
Array
List
Array
Tuple
Which of the following data structures can store multiple data types?
List
Record
Tuple
Array
List
Record
Tuple
Which of the following data structures are immutable (read-only)?
List
Record
Tuple
Array
Tuple
Contents cannot be modified at run-time
Which of the following data structures have no predefined scope?
List
Record
Tuple
Array
List
Which of the following data structures can store multiple values under one identifier?
List
Record
Tuple
Array
All of them
List
Record
Tuple
Array
Which of the following data structures are accessed using an index?
List
Record
Tuple
Array
List
Tuple
Array
Which of the following data structures can have multiple dimensions?
List
Record
Tuple
Array
Array
2D | 3D
How many pointers are used in a queue?
2 - Front and Rear
How many pointers are used in a stack?
1 - Top
What pointer is impacted when you enqueue an item
Rear/Tail - Incremented by one
What pointer is impacted when you dequeue an item
Front/Head - incremented by one
Which data structure operates on a FIFO basis?
Queue
First in first out
Which data structure operates on a LIFO basis?
Stack
Last in first out
Where might a queue be used?
Printer Queue
Keyboard Buffer
Where might a stack be used?
Web Browser History
Undo button in a word processor
What is the process for pushing an item to a stack?
If stack is full then report error and stop.
Else increment pointer
Add data item at position ‘pointer’
What type of error could occur if an item is added to a full stack or queue?
Overflow Error
What type of error could occur if an item is removed from to an empty stack or queue?
Underflow Error
What is the process for enqueuing an item to a queue?
If queue is full then report error and stop.
If not full then increment tail by 1
Add item to tail index
What is the process for dequeuing an item from a queue?
Check if the queue is empty, If it is then output message reporting an error.
If it is not empty, then output the element located at the head
Increment head by 1
What is the process for popping an item from a stack?
If stack is empty then report error & stop.
Else output the data at the top
decrement the top pointer.
Which data structure allows direct access to a record, and takes the same time to search no matter how big it gets?
Hash Table
What is linear probing?
Used if a collision/synonym occurs (same hash value created as something that already exists)
Linear probing could be used to move through the hash table one space at a time to find the next free space.
What keywords can be used to describe a binary search tree?
Ordered Data Structure
Child Node
Parent Node
Root
Branch
Leaf Node
Sub-Tree
How is data found when searching a BST?
Start at the root node
If a search item is less than a root node, then go left.
If a search item is greater than a root node, then go right
REPEAT until found of leaf node reached
Why can a BST be searched quicker than an array?
Each node does not need to be searched
List is split every time a direction is chosen (left if less, right if more)
What is a linked list? What is it made up of?
A dynamic data structure
Made up of nodes
Each node consists of data and pointer
Pointer gives location of next node.
As it grows in size, why does it take longer to search a linked list?
Requires every node to be checked (following pointers) until the desired record is found or the end is reached.
What types of edges can be used in a graph?
Directed
Undirected
Weighted
Unweighted
Edges in a directed graph only go in one direction. Undirected edges can go in both directions.
How do you differentiate between a tree and a graph?
Graph can have cycles/loops and a tree cannot
What keywords descirbe a multi-branch tree?
A dynamic data structure
Consists of nodes that have sub nodes (children)
First node is called the root
Lines that join nodes are called branches (one directional)
Can have more than two child nodes
How does a binary tree differ from a multi-branch tree?
Binary Tree cannot have more than two child nodes per parent.
Binary Tree is ordered
What keywords can be used to describe a multi-branch tree?
Dynamic Data Structure
Child Node
Parent Node
Root
Branch
Leaf Node
Sub-Tree