I just wanted to ask whether there is any cheap way to reconstruct a BFS tree after deletion of one of its edges. It would be useful for me when I should leave out several edges from the BFS tree. While building a spanning tree, I use the edge-adjacency list ($i.e.$, collection of edges incident to a given node) for each node. The BFS tree is stored by saving the ancestors of the nodes in the tree. After removal of an edge, I would like to reconstruct the ancestors of the nodes such that they represent a BFS tree of the remaining graph.