Algorithmic Problem Solving Flashcards
7 cards from real Epic Skills Assessment practice questions. Tap to flip, then mark Knew It or Still Learning — missed cards come back until you master them.
Read the first 7 Algorithmic Problem Solving flashcards as text
What is the time complexity of finding an element in a balanced binary search tree?
Answer: O(log n)
A balanced BST halves the search space at each level, yielding O(log n) lookup time.
Which technique solves a problem by breaking it into overlapping subproblems and storing results to avoid redundant computation?
Answer: Dynamic programming
Dynamic programming stores subproblem solutions (memoization or tabulation) to avoid recomputing them.
In a graph with V vertices and E edges, what is the space complexity of an adjacency list representation?
Answer: O(V + E)
An adjacency list stores each vertex once and each edge once (or twice for undirected), giving O(V + E).
Which sorting algorithm has the best average-case time complexity?
Answer: Merge sort
Merge sort guarantees O(n log n) average and worst case, outperforming the O(n²) algorithms.
What does it mean for an algorithm to be 'in-place'?
Answer: It uses O(1) extra memory beyond the input
An in-place algorithm requires only a constant amount of auxiliary space regardless of input size.
Which data structure is best suited for implementing a priority queue efficiently?
Answer: Binary heap
A binary heap supports insert and extract-min/max in O(log n), making it the standard priority queue implementation.
What is the worst-case time complexity of quicksort?
Answer: O(n²)
Quicksort degrades to O(n²) when the pivot is always the smallest or largest element (e.g., already-sorted input with a naive pivot).