8 cards104 people studying this

Data Structures & Algorithms

Must-know DSA concepts for coding interviews — Big O, trees, graphs, sorting, and dynamic programming.

Share on XWhatsApp
Study this deck for free

Free account includes unlimited cards, FSRS v6 scheduling, and AI card generation.
No credit card required.

Try it — tap the card
What is Big O notation?
92% likely forgotten
Tap to see the answer
Describes the upper bound of an algorithm's time/space complexity as input grows. O(1) constant, O(log n) logarithmic, O(n) linear, O(n²) quadratic.
Tap to flip back
What is a hash table?
Last reviewed 12 days ago
Tap to see the answer
A data structure mapping keys to values using a hash function. Average O(1) lookup, insert, delete. Handles collisions via chaining or open addressing.
Tap to flip back
What is the difference between BFS and DFS?
87% likely forgotten
Tap to see the answer
BFS explores level by level (uses queue). DFS explores as deep as possible first (uses stack/recursion). BFS finds shortest path in unweighted graphs.
Tap to flip back
What is dynamic programming?
Fading — due 5 days ago
Tap to see the answer
Breaking a problem into overlapping subproblems, solving each once, and storing results. Two approaches: top-down (memoization) and bottom-up (tabulation).
Tap to flip back
What is a binary search tree?
79% likely forgotten
Tap to see the answer
A binary tree where left child < parent < right child. Enables O(log n) search, insert, delete for balanced trees. Degenerates to O(n) if unbalanced.
Tap to flip back
What is the time complexity of merge sort?
Last reviewed 21 days ago
Tap to see the answer
O(n log n) in all cases — divides array in half recursively, then merges sorted halves. Stable sort. O(n) extra space.
Tap to flip back
What is a stack vs a queue?
94% likely forgotten
Tap to see the answer
Stack: LIFO (Last In, First Out) — push/pop from top. Queue: FIFO (First In, First Out) — enqueue at back, dequeue from front.
Tap to flip back
What is a linked list and when to use it?
Fading — due 9 days ago
Tap to see the answer
A sequence of nodes where each points to the next. O(1) insert/delete at head. Use when frequent insertions/deletions needed; arrays are better for random access.
Tap to flip back
Create your own AI flashcards

Create your own AI flashcards in 30 seconds — free

Get started for free

Want to track your progress with spaced repetition?

Sign up free to save this deck

Made with Forgetless — the AI flashcard app

Create your own deck in 30 seconds. Powered by the same algorithm as Anki.

Start free