Mark Ryan
As explained on the main exercise sheet, RouteFinder3 involves using Dijkstra's algorithm. Here are two examples showing how the RouteTableau evolves.
java RouteFinder3 Oxford Sheffield 9 15 -d Tableau contents: Can get to: by: from: at: shortest? Oxford 9.0 null 0.0 false 1 entries --- Tableau contents: Can get to: by: from: at: shortest? Birmingham 10.39 Oxford 9.33 false London 10.11 Oxford 9.15 false Oxford 9.0 null 0.0 true 3 entries --- Tableau contents: Can get to: by: from: at: shortest? Colchester 11.09 London 10.15 false Manchester 13.36 London 10.55 false Liverpool 13.55 London 11.0 false Edinburgh 14.49 London 10.3 false Birmingham 10.39 Oxford 9.33 false York 12.26 London 10.3 false London 10.11 Oxford 9.15 true Newcastle 13.21 London 10.3 false Oxford 9.0 null 0.0 true 9 entries --- Tableau contents: Can get to: by: from: at: shortest? Colchester 11.09 London 10.15 false Manchester 13.02 Birmingham 11.04 false Warwick 11.53 Birmingham 11.18 false Liverpool 12.28 Birmingham 10.48 false Leicester 11.54 Birmingham 11.02 false Edinburgh 14.49 London 10.3 false Birmingham 10.39 Oxford 9.33 true York 12.26 London 10.3 false London 10.11 Oxford 9.15 true Newcastle 13.21 London 10.3 false Oxford 9.0 null 0.0 true 11 entries --- Tableau contents: Can get to: by: from: at: shortest? Colchester 11.09 London 10.15 true Manchester 13.02 Birmingham 11.04 false Warwick 11.53 Birmingham 11.18 false Liverpool 12.28 Birmingham 10.48 false Leicester 11.54 Birmingham 11.02 false Edinburgh 14.49 London 10.3 false Birmingham 10.39 Oxford 9.33 true York 12.26 London 10.3 false London 10.11 Oxford 9.15 true Newcastle 13.21 London 10.3 false Oxford 9.0 null 0.0 true 11 entries --- Tableau contents: Can get to: by: from: at: shortest? Colchester 11.09 London 10.15 true Manchester 13.02 Birmingham 11.04 false Warwick 11.53 Birmingham 11.18 true Liverpool 12.28 Birmingham 10.48 false Leicester 11.54 Birmingham 11.02 false Edinburgh 14.49 London 10.3 false Birmingham 10.39 Oxford 9.33 true York 12.26 London 10.3 false London 10.11 Oxford 9.15 true Newcastle 13.21 London 10.3 false Oxford 9.0 null 0.0 true 11 entries --- Tableau contents: Can get to: by: from: at: shortest? Colchester 11.09 London 10.15 true Manchester 13.02 Birmingham 11.04 false Warwick 11.53 Birmingham 11.18 true Liverpool 12.28 Birmingham 10.48 false Leicester 11.54 Birmingham 11.02 true Edinburgh 14.49 London 10.3 false Birmingham 10.39 Oxford 9.33 true York 12.26 London 10.3 false London 10.11 Oxford 9.15 true Newcastle 13.21 London 10.3 false Oxford 9.0 null 0.0 true 11 entries --- Tableau contents: Can get to: by: from: at: shortest? Colchester 11.09 London 10.15 true Manchester 13.02 Birmingham 11.04 false Warwick 11.53 Birmingham 11.18 true Liverpool 12.28 Birmingham 10.48 false Leicester 11.54 Birmingham 11.02 true Edinburgh 14.49 London 10.3 false Birmingham 10.39 Oxford 9.33 true York 12.26 London 10.3 true London 10.11 Oxford 9.15 true Newcastle 13.21 London 10.3 false Oxford 9.0 null 0.0 true 11 entries --- Tableau contents: Can get to: by: from: at: shortest? Colchester 11.09 London 10.15 true Manchester 13.02 Birmingham 11.04 false Warwick 11.53 Birmingham 11.18 true Liverpool 12.28 Birmingham 10.48 true Leicester 11.54 Birmingham 11.02 true Edinburgh 14.49 London 10.3 false Birmingham 10.39 Oxford 9.33 true York 12.26 London 10.3 true London 10.11 Oxford 9.15 true Newcastle 13.21 London 10.3 false Oxford 9.0 null 0.0 true 11 entries --- Tableau contents: Can get to: by: from: at: shortest? Leeds 14.15 Manchester 13.13 false Sheffield 14.08 Manchester 13.19 false Colchester 11.09 London 10.15 true Manchester 13.02 Birmingham 11.04 true Warwick 11.53 Birmingham 11.18 true Liverpool 12.28 Birmingham 10.48 true Leicester 11.54 Birmingham 11.02 true Edinburgh 14.49 London 10.3 false Birmingham 10.39 Oxford 9.33 true York 12.26 London 10.3 true London 10.11 Oxford 9.15 true Newcastle 13.21 London 10.3 false Oxford 9.0 null 0.0 true 13 entries --- Tableau contents: Can get to: by: from: at: shortest? Leeds 14.15 Manchester 13.13 false Sheffield 14.08 Manchester 13.19 false Colchester 11.09 London 10.15 true Manchester 13.02 Birmingham 11.04 true Warwick 11.53 Birmingham 11.18 true Liverpool 12.28 Birmingham 10.48 true Leicester 11.54 Birmingham 11.02 true Edinburgh 14.49 London 10.3 false Birmingham 10.39 Oxford 9.33 true York 12.26 London 10.3 true London 10.11 Oxford 9.15 true Newcastle 13.21 London 10.3 true Oxford 9.0 null 0.0 true 13 entries ---
Now we extract the itinerary, starting from the destination and working
backwards to the source:
Oxford (9.33) to Birmingham (10.39), Birmingham (11.04) to Manchester (13.02), Manchester (13.19) to Sheffield (14.08)
Number of database results extracted: 177
java RouteFinder3 Birmingham Glasgow 10 19
Tableau contents: Can get to: by: from: at: shortest? Birmingham 10.0 null 0.0 false 1 entries --- Tableau contents: Can get to: by: from: at: shortest? Manchester 12.16 Birmingham 10.34 false Glasgow 17.3 Birmingham 12.57 false Warwick 10.53 Birmingham 10.18 false Liverpool 12.28 Birmingham 10.48 false Leicester 10.54 Birmingham 10.03 false Edinburgh 15.33 Birmingham 11.0 false Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 false London 11.58 Birmingham 10.15 false Oxford 11.23 Birmingham 10.03 false Newcastle 13.09 Birmingham 10.0 false 11 entries --- Tableau contents: Can get to: by: from: at: shortest? Manchester 12.16 Birmingham 10.34 false Glasgow 17.3 Birmingham 12.57 false Warwick 10.53 Birmingham 10.18 true Liverpool 12.28 Birmingham 10.48 false Leicester 10.54 Birmingham 10.03 false Edinburgh 15.33 Birmingham 11.0 false Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 false London 11.58 Birmingham 10.15 false Oxford 11.23 Birmingham 10.03 false Newcastle 13.09 Birmingham 10.0 false 11 entries --- Tableau contents: Can get to: by: from: at: shortest? Manchester 12.16 Birmingham 10.34 false Glasgow 17.3 Birmingham 12.57 false Warwick 10.53 Birmingham 10.18 true Liverpool 12.28 Birmingham 10.48 false Leicester 10.54 Birmingham 10.03 true Edinburgh 15.33 Birmingham 11.0 false Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 false London 11.58 Birmingham 10.15 false Oxford 11.23 Birmingham 10.03 false Newcastle 13.09 Birmingham 10.0 false 11 entries --- Tableau contents: Can get to: by: from: at: shortest? Manchester 12.16 Birmingham 10.34 false Glasgow 17.3 Birmingham 12.57 false Warwick 10.53 Birmingham 10.18 true Liverpool 12.28 Birmingham 10.48 false Leicester 10.54 Birmingham 10.03 true Edinburgh 15.33 Birmingham 11.0 false Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 false London 11.58 Birmingham 10.15 false Oxford 11.23 Birmingham 10.03 true Newcastle 13.09 Birmingham 10.0 false 11 entries --- Tableau contents: Can get to: by: from: at: shortest? Colchester 12.45 London 12.0 false Manchester 12.16 Birmingham 10.34 false Glasgow 17.3 Birmingham 12.57 false Warwick 10.53 Birmingham 10.18 true Liverpool 12.28 Birmingham 10.48 false Leicester 10.54 Birmingham 10.03 true Edinburgh 15.33 Birmingham 11.0 false Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 false London 11.58 Birmingham 10.15 true Oxford 11.23 Birmingham 10.03 true Newcastle 13.09 Birmingham 10.0 false 12 entries --- Tableau contents: Can get to: by: from: at: shortest? Colchester 12.45 London 12.0 false Manchester 12.16 Birmingham 10.34 false Glasgow 16.27 York 12.54 false Warwick 10.53 Birmingham 10.18 true Liverpool 12.28 Birmingham 10.48 false Leicester 10.54 Birmingham 10.03 true Edinburgh 14.49 York 12.28 false Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 true London 11.58 Birmingham 10.15 true Oxford 11.23 Birmingham 10.03 true Newcastle 13.09 Birmingham 10.0 false 12 entries --- Tableau contents: Can get to: by: from: at: shortest? Leeds 13.34 Manchester 12.3 false Sheffield 13.08 Manchester 12.19 false Colchester 12.45 London 12.0 false Manchester 12.16 Birmingham 10.34 true Glasgow 16.27 York 12.54 false Warwick 10.53 Birmingham 10.18 true Liverpool 12.28 Birmingham 10.48 false Leicester 10.54 Birmingham 10.03 true Edinburgh 14.49 York 12.28 false Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 true London 11.58 Birmingham 10.15 true Oxford 11.23 Birmingham 10.03 true Newcastle 13.09 Birmingham 10.0 false 14 entries --- Tableau contents: Can get to: by: from: at: shortest? Leeds 13.34 Manchester 12.3 false Sheffield 13.08 Manchester 12.19 false Colchester 12.45 London 12.0 false Manchester 12.16 Birmingham 10.34 true Glasgow 16.27 York 12.54 false Warwick 10.53 Birmingham 10.18 true Liverpool 12.28 Birmingham 10.48 true Leicester 10.54 Birmingham 10.03 true Edinburgh 14.49 York 12.28 false Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 true London 11.58 Birmingham 10.15 true Oxford 11.23 Birmingham 10.03 true Newcastle 13.09 Birmingham 10.0 false 14 entries --- Tableau contents: Can get to: by: from: at: shortest? Leeds 13.34 Manchester 12.3 false Sheffield 13.08 Manchester 12.19 false Colchester 12.45 London 12.0 true Manchester 12.16 Birmingham 10.34 true Glasgow 16.27 York 12.54 false Warwick 10.53 Birmingham 10.18 true Liverpool 12.28 Birmingham 10.48 true Leicester 10.54 Birmingham 10.03 true Edinburgh 14.49 York 12.28 false Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 true London 11.58 Birmingham 10.15 true Oxford 11.23 Birmingham 10.03 true Newcastle 13.09 Birmingham 10.0 false 14 entries --- Tableau contents: Can get to: by: from: at: shortest? Leeds 13.34 Manchester 12.3 false Sheffield 13.08 Manchester 12.19 true Colchester 12.45 London 12.0 true Manchester 12.16 Birmingham 10.34 true Glasgow 16.27 York 12.54 false Warwick 10.53 Birmingham 10.18 true Liverpool 12.28 Birmingham 10.48 true Leicester 10.54 Birmingham 10.03 true Edinburgh 14.49 York 12.28 false Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 true London 11.58 Birmingham 10.15 true Oxford 11.23 Birmingham 10.03 true Newcastle 13.09 Birmingham 10.0 false 14 entries --- Tableau contents: Can get to: by: from: at: shortest? Leeds 13.34 Manchester 12.3 false Sheffield 13.08 Manchester 12.19 true Colchester 12.45 London 12.0 true Manchester 12.16 Birmingham 10.34 true Glasgow 16.27 York 12.54 false Warwick 10.53 Birmingham 10.18 true Liverpool 12.28 Birmingham 10.48 true Leicester 10.54 Birmingham 10.03 true Edinburgh 14.49 York 12.28 false Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 true London 11.58 Birmingham 10.15 true Oxford 11.23 Birmingham 10.03 true Newcastle 13.09 Birmingham 10.0 true 14 entries --- Tableau contents: Can get to: by: from: at: shortest? Leeds 13.34 Manchester 12.3 true Sheffield 13.08 Manchester 12.19 true Colchester 12.45 London 12.0 true Manchester 12.16 Birmingham 10.34 true Glasgow 16.27 York 12.54 false Warwick 10.53 Birmingham 10.18 true Liverpool 12.28 Birmingham 10.48 true Leicester 10.54 Birmingham 10.03 true Edinburgh 14.49 York 12.28 false Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 true London 11.58 Birmingham 10.15 true Oxford 11.23 Birmingham 10.03 true Newcastle 13.09 Birmingham 10.0 true 14 entries --- Tableau contents: Can get to: by: from: at: shortest? Leeds 13.34 Manchester 12.3 true Sheffield 13.08 Manchester 12.19 true Colchester 12.45 London 12.0 true Manchester 12.16 Birmingham 10.34 true Glasgow 16.08 Edinburgh 15.15 false Warwick 10.53 Birmingham 10.18 true Liverpool 12.28 Birmingham 10.48 true Leicester 10.54 Birmingham 10.03 true Edinburgh 14.49 York 12.28 true Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 true London 11.58 Birmingham 10.15 true Oxford 11.23 Birmingham 10.03 true Newcastle 13.09 Birmingham 10.0 true 14 entries --- Tableau contents: Can get to: by: from: at: shortest? Leeds 13.34 Manchester 12.3 true Sheffield 13.08 Manchester 12.19 true Colchester 12.45 London 12.0 true Manchester 12.16 Birmingham 10.34 true Glasgow 16.08 Edinburgh 15.15 true Warwick 10.53 Birmingham 10.18 true Liverpool 12.28 Birmingham 10.48 true Leicester 10.54 Birmingham 10.03 true Edinburgh 14.49 York 12.28 true Birmingham 10.0 null 0.0 true York 12.05 Birmingham 10.0 true London 11.58 Birmingham 10.15 true Oxford 11.23 Birmingham 10.03 true Newcastle 13.09 Birmingham 10.0 true 14 entries ---Birmingham (10.0) to York (12.05), York (12.28) to Edinburgh (14.49), Edinburgh (15.15) to Glasgow (16.08)
Number of database results extracted: 564