This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: 6.889 — Lecture 11: Multiple-Source Shortest Paths Christian Sommer firstname.lastname@example.org (figures by Philip Klein) October 19, 2011 Single-Source Shortest Path (SSSP) Problem : given a graph G = ( V,E ) and a source vertex s ∈ V , compute shortest-path distance d G ( s,v ) for each v ∈ V (and encode shortest-path tree) Multiple-Source Shortest Path (MSSP) Problem : given a graph G = ( V,E ) and a source set S ⊆ V , compute shortest-path distance d G ( s,v ) for some ( s,v ) ∈ S × V (and encode shortest-path trees rooted at each s ∈ S ) Assumption (all of Lecture 11) planar G (extends to bdd. genus ), non-negative edge lengths ‘ : E → R + Straightforward SSSP for each source s ∈ S , time and encoding size O ( | S | · n ) This Lecture if all s ∈ S on single face f , time and encoding size O ( n log n ) ( independent of | S | / face size!) Why? one important application: all-pairs shortest paths between boundary nodes of a piece in r –division. requires only time O ( r log r ) (instead of O ( r 3 / 2 ) ) How? Main Idea compute one explicit shortest-path tree rooted at a root r i ∈ f , then modify tree to obtain shortest-path tree rooted at neighbor r i +1 ∈ f . tree changes: some edges not in tree anymore, some new edges join. modify using dynamic trees , each modification can be done in time O (log n ) • how many modifications? • which edges to modify? 1 How many modifications? Claim. Going around the face f , for each edge e ∈ E : • e joins the tree at most once and • e leaves the tree at most once....
View Full Document
This note was uploaded on 01/20/2012 for the course CS 6.889 taught by Professor Erikdemaine during the Fall '11 term at MIT.
- Fall '11