Consider the following problems:
- One cannot take medicine before eating, or go to play before doing his homework, etc. How should he decide the order of his chores?
- Given a list of courses and their prerequisites, create a course plan such that no course is taken before its prerequisite.
- There are a number of libraries required to install a software, but there are, in turn, another set of libraries required to install those libraries. How would a script install the entire chain?
What is the common Graph Theory theme that unites these problems?