Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- BestPath(u):
- min = MAX_INT
- is_leaf = False
- path = {}
- child_list = Children(u)
- if child_list == {}:
- is_leaf = True
- path = {u}
- min = 0
- else:
- for v in child_list:
- c_path, small_sum, is_leaf = BestPath(v)
- big_sum = Dist(u, v) + small_sum
- if (is_leaf and big_sum < min) or (not is_leaf and big_sum < small_sum and big_sum < min):
- path = {u} + c_path
- min = big_sum
- else if (big_sum > small_sum) and (small_sum < min):
- path = c_path
- min = small_sum
- return path, min, is_leaf
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement