Shortest path faster algorithm