Skip to main content
Back to course
Log in
Get started
Someone wanted to learn this too, so Grasp built them a personal learning path.
Create your own
Mastering Algorithms and Leetcode
·
Module 9
Greedy Decisions, Intervals, and Connectivity
1
Identifying Greedy Choices and Safety Properties
Identify the local choice and the property that would make it safe in a candidate greedy solution.
Identify the local choice and the property that would make it safe in a candidate greedy solution.
2
Evaluating Greedy Algorithms: Exchange Arguments and Counterexamples
Validate a proposed greedy rule with an intuitive exchange argument or refute it with a counterexample.
Validate a proposed greedy rule with an intuitive exchange argument or refute it with a counterexample.
3
Merging Overlapping Intervals
Merge overlapping intervals after sorting by start position.
Merge overlapping intervals after sorting by start position.
4
Interval Scheduling Algorithm
Select a maximum-size set of nonoverlapping intervals by earliest finishing time.
Select a maximum-size set of nonoverlapping intervals by earliest finishing time.
5
Calculating Minimum Resource Requirements
Determine the minimum concurrent resources required for a set of time intervals.
Determine the minimum concurrent resources required for a set of time intervals.
6
Greedy Reachability Analysis
Solve a reachability problem by maintaining the farthest position reached so far.
Solve a reachability problem by maintaining the farthest position reached so far.
7
Implementing Optimized Disjoint-Set Union
Implement disjoint-set union with path compression and union by size.
Implement disjoint-set union with path compression and union by size.
8
Cycle Detection Using Disjoint-Set Union
Use disjoint-set union to determine whether adding an edge creates a cycle.
Use disjoint-set union to determine whether adding an edge creates a cycle.
Previous module
Graph Modeling and Traversal
Next module
Dynamic Programming from First Principles