Given:
- A database of flights (departing city, arrival city, departure time, arrival time).
Questions:
- What would be the most efficient algorithm for listing service between two cities, if departure time is unimportant? Consider that we want to minimize layover time (but still above a nominal minimum, i.e. 20 minutes), and minimize the number of stopovers (if there is a nonstop route, this is trivial, but if not, finding one-connection routes over two-connection and so on, with reasonable stopover times, less trivial).
- If at all possible, I don't want to have to specifically label any airports as hubs, so as to leave open the possibility of point-to-point route networks.
- There should be an option to specify a desired (approximate) departure time. It is OK if this has its own algorithm separate from the first.
Code language for this project hasn't been chosen yet (probably a .NET language, since quick forms will come in handy), so pseudocode algorithms are preferred. I'll keep an eye out for follow-up questions if added info might help.