Data Structures Algorithms Big O Common Structures
Practice 30 core DSA and Big-O concepts
What You'll Learn
Learn DSA fundamentals with free flashcards. Review Big-O notation, arrays, linked lists, trees, hash tables, sorting, and common algorithmic patterns.
Key Topics
- Big-O runtime and space complexity essentials
- Core data structures and common operations
- Sorting and searching baseline concepts
- Algorithmic patterns for interviews and coursework
Looking for more programming resources? Visit the Explore page to browse related decks or use the Create Your Own Deck flow to customize this set.
How to study this deck
Start with a quick skim of the questions, then launch study mode to flip cards until you can answer each prompt without hesitation. Revisit tricky cards using shuffle or reverse order, and schedule a follow-up review within 48 hours to reinforce retention.
Preview: Data Structures Algorithms Big O Common Structures
Question
Runtime that grows linearly with input size
Answer
O(n)
Question
Runtime that grows logarithmically
Answer
O(log n)
Question
Runtime for two nested loops over n elements
Answer
O(n^2)
Question
Average lookup time in a hash table
Answer
O(1) average
Question
Worst-case lookup in a balanced binary search tree
Answer
O(log n)
Question
Contiguous memory structure with index-based access
Answer
Array
Question
Dynamic structure of nodes pointing to next node
Answer
Linked list
Question
LIFO data structure
Answer
Stack
Question
FIFO data structure
Answer
Queue
Question
Tree where each node has at most two children
Answer
Binary tree
Question
Binary tree where left < root < right
Answer
Binary search tree
Question
Tree balanced by color rules to keep height near log n
Answer
Red-black tree
Question
Complete binary tree used for priority queues
Answer
Heap
Question
Graph representation using vertex neighbor lists
Answer
Adjacency list
Question
Graph traversal using a queue
Answer
Breadth-first search (BFS)
Question
Graph traversal using recursion or stack
Answer
Depth-first search (DFS)
Question
Algorithm for shortest paths with nonnegative edges
Answer
Dijkstra's algorithm
Question
Divide-and-conquer sorting with average O(n log n)
Answer
Quicksort
Question
Stable O(n log n) divide-and-conquer sorting
Answer
Mergesort
Question
Simple in-place sorting with repeated swaps
Answer
Bubble sort
Question
Search algorithm requiring sorted array and halving range
Answer
Binary search
Question
Technique storing solutions to overlapping subproblems
Answer
Dynamic programming
Question
Optimization strategy making locally best choices
Answer
Greedy algorithm
Question
Pattern using two indices moving through a sequence
Answer
Two pointers
Question
Pattern maintaining a moving subarray/subsequence window
Answer
Sliding window
Question
Backtracking commonly explores search space using
Answer
Recursion
Question
Collision resolution strategy using linked lists per bucket
Answer
Separate chaining
Question
Hash table strategy probing for next open slot
Answer
Open addressing
Question
Space complexity of storing n items in an array
Answer
O(n)
Question
Amortized append time for dynamic arrays
Answer
O(1) amortized