algorithm to find shortest path connecting EVERY node I have received a problem to solve and I am not sure what algorithm to use.
TLDR; Find the shortest path to get to every node in a undirected graph

The problem states that one must visit every station in the shanghai metro in the shortest path possible. Interchange Stations ('edges') can be reused and you can start / stop anywhere.
I have created a lookup table that shows connected stations as well as the distance to travel (not shown)
&quot;Xinzhuang&quot;: [
  &quot;Waihuan Rd.&quot; : 1
],
&quot;Waihuan Rd.&quot;: [
  &quot;Xinzhuang&quot;: 2.2,
  &quot;Lianhua Rd.&quot;: 3
],
&quot;Lianhua Rd.&quot;: [
  &quot;Waihuan Rd.&quot;: 4,
  &quot;Jinjiang Park&quot;: 5,
],
&quot;Jinjiang Park&quot;: [
  &quot;Lianhua Rd.&quot;: 9.1,
  &quot;South Railway Station&quot;: 10.3
],
&quot;South Railway Station&quot;: [
  &quot;Jinjiang Park&quot;: 4.1,
  &quot;Caobao Rd.&quot;: 1.1,
  &quot;Shilong Rd.&quot;: 2.5
],
...

I found this leetcode problem but it did not mention any specific algorithm and since it was O(2^N * N) I wondered if there was a faster method than BFS.
https://leetcode.com/problems/shortest-path-visiting-all-nodes/solution/
Since my graph is so big, I was going to reduce the lines with a single path to a single node.
What algorithm can I use that will work in Polynomial time, OR has the least time complexity?
There is no polynomial-time algorithm for your problem unless $P=NP$, since it captures the Hamiltonian path problem as a special case.
Moreover, unless the exponential time hypothesis fails, there is no $2^{o(n)}$-time algorithm for your problem, where $n$ is the number of vertices.