def relax(search, edge): v = e.either(edge) w = e.other(edge, v) visited_v = map.get(search['visitedMap'], v)['value'] visited_w = map.get(search['visitedMap'], w)['value'] if visited_w['distTo'] > (visited_v['distTo'] + e.weight(edge)): distToW = visited_v['distTo'] + e.weight(edge) map.put(search['visitedMap'], w, {'marked':True,'edgeTo':edge,'distTo':distToW}) if minpq.contains(search['minpq'], w): minpq.decreasePriority(search['minpq'], w, distToW) else: minpq.insert(search['minpq'], w, distToW)
def test_edgeMethods(self): edge = e.newEdge('Bogota', 'Cali') edge = e.newEdge('Bogota', 'Cali') self.assertEqual('Bogota', e.either(edge)) self.assertEqual('Cali', e.other(edge, e.either(edge))) self.assertEqual(e.weight(edge), 0)
def test_edgeMethods(self): edge = e.newEdge('Bogota', 'Cali') print(e.either(edge)) print(e.other(edge, e.either(edge))) print(e.weight(edge))