Hello, I am having a little trouble writing Dijkstra's Algorithm, at the point where I have to calculate the distance of each node from the source - here is my code so far:
infinity = 1000000 invalid_node = -1 startNode = 0 class Node: distFromSource = infinity previous = invalid_node visited = False def populateNodeTable(): nodeTable = [] index =0 f = open('route.txt', 'r') for line in f: node = map(int, line.split(',')) nodeTable.append(Node()) print nodeTable[index].previous print nodeTable[index].distFromSource index +=1 nodeTable[startNode].distFromSource = 0 return nodeTable def tentativeDistance(currentNode, nodeTable): nearestNeighbour = [] for currentNode in nodeTable: if Node[currentNode].distFromSource + # currentDistance = + nodeTable[currentNode] # currentDistance = currentNode.distFromSource + nodeTable.currentNode currentNode.previous = currentNode currentNode.length = currentDistance currentNode.visited = True currentNode +=1 nearestNeighbour.append(currentNode) print nearestNeighbour return nearestNeighbour currentNode = startNode if __name__ == "__main__": populateNodeTable() tentativeDistance(currentNode,populateNodeTable()) As can be seen from the lines commented out, I have tried a few ways of getting the distance though none of them has worked; I am not sure on how I can resolve this problem -- http://mail.python.org/mailman/listinfo/python-list