public void findPathToBinaryHeap(Location to) { BinaryHeap binaryHeap = new BinaryHeap(); Location cur = this; distance = 0; while(cur != null && cur != to) { cur.proceedNodeBinaryHeap(binaryHeap); cur = binaryHeap.removeMin(); } if(cur == null) System.out.println("Unable to find a path from " + name + " to " + to.name); else { System.out.println("Your trip from " + name + " to " + to.name + " in reverse order"); for(cur=to; cur!=this; cur=cur.from) { System.out.println(" " + cur.name + " at " + cur.distance); } } reinit(); } private void proceedNodeBinaryHeap(BinaryHeap binaryHeap) { for(int i=0; i