dijkstra's algorithm in c