From: Skullheadx <704277@pdsb.net> Date: Wed, 28 Dec 2022 02:07:11 +0000 (-0500) Subject: find shortest_route from all routes func X-Git-Url: http://git.skullheadx.com/about.html?a=commitdiff_plain;h=95ef2b37c526690f568ed674c746b9fb46a02c4d;p=The-Traveling-Salesman-Problem.git find shortest_route from all routes func --- diff --git a/brute_force.py b/brute_force.py index 97244b9..7ea1491 100644 --- a/brute_force.py +++ b/brute_force.py @@ -1,5 +1,5 @@ from queue import Queue -from graph import calculate_route +from graph import find_shortest_route def brute_force(graph: list) -> list: @@ -20,12 +20,4 @@ def brute_force(graph: list) -> list: temp.append(node) q.put(temp) - shortest_distance = None - shortest_route = [] - for route in routes: - distance = calculate_route(route) - if shortest_distance is None or distance < shortest_distance: - shortest_distance = distance - shortest_route = route - - return shortest_route + return find_shortest_route(routes) diff --git a/graph.py b/graph.py index 7fab2f5..29be0e0 100644 --- a/graph.py +++ b/graph.py @@ -53,3 +53,26 @@ def calculate_route(route: list) -> float: d += distance(town1, town2) town1 = town2 return d + + +def print_info(route: list, time: float, method_name: str, r=0) -> None: + print( + f""" + Traveling Salesman Problem + Method Used: {method_name} + Time Used: {round(time, r):,} seconds + Number of Nodes: {(len(route) - 1):,} + Distance: {round(calculate_route(route), r):,} + """) + + +def find_shortest_route(routes: list) -> list: + shortest_distance = None + shortest_route = [] + for route in routes: + d = calculate_route(route) + print(d) + if shortest_distance is None or d < shortest_distance: + shortest_distance = d + shortest_route = route + return shortest_route