Imagine you are given a list of talks. Each talk has an associated start time and end time. Some of the talks overlap. That is, the start times for some talks may be earlier than the end times for others. Talks that overlap are said to conflict. Note that if Talk A ends at the same time that Talk B begins, they do NOT overlap. Your goal is to construct an algorithm that will schedule as many talks as possible in a single lecture hall and to implement the solution in Java. You cannot schedule two or more conflicting talks. The lecture hall is available from 8:00AM to 6:00PM.(Hint: you will pick the first talk that ends the earliest, not starts earliest. Then, you will pick the second that ends the earliest after the first talk ends)
Classes: You should construct at least the following 3 classes for this application: