Changeset 1283:fc20371677b9 in lemon-0.x for src/lemon
- Timestamp:
- 03/31/05 15:31:39 (19 years ago)
- Branch:
- default
- Phase:
- public
- Convert:
- svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@1715
- Location:
- src/lemon
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
src/lemon/bfs.h
r1270 r1283 654 654 ///@{ 655 655 656 ///Copies the shortest path to \c t into \c p 657 658 ///This function copies the shortest path to \c t into \c p. 659 ///If it \c \t is a source itself or unreachable, then it does not 660 ///alter \c p. 661 ///\todo Is it the right way to handle unreachable nodes? 662 ///\return Returns \c true if a path to \c t was actually copied to \c p, 663 ///\c false otherwise. 664 ///\sa DirPath 665 template<class P> 666 bool getPath(P &p,Node t) 667 { 668 if(reached(t)) { 669 p.clear(); 670 typename P::Builder b(p); 671 for(b.setStartNode(t);pred(t)!=INVALID;t=predNode(t)) 672 b.pushFront(pred(t)); 673 b.commit(); 674 return true; 675 } 676 return false; 677 } 678 656 679 ///The distance of a node from the root(s). 657 680 -
src/lemon/dfs.h
r1236 r1283 661 661 ///@{ 662 662 663 ///Copies the path to \c t on the DFS tree into \c p 664 665 ///This function copies the path on the DFS tree to \c t into \c p. 666 ///If it \c \t is a source itself or unreachable, then it does not 667 ///alter \c p. 668 ///\todo Is it the right way to handle unreachable nodes? 669 ///\return Returns \c true if a path to \c t was actually copied to \c p, 670 ///\c false otherwise. 671 ///\sa DirPath 672 template<class P> 673 bool getPath(P &p,Node t) 674 { 675 if(reached(t)) { 676 p.clear(); 677 typename P::Builder b(p); 678 for(b.setStartNode(t);pred(t)!=INVALID;t=predNode(t)) 679 b.pushFront(pred(t)); 680 b.commit(); 681 return true; 682 } 683 return false; 684 } 685 663 686 ///The distance of a node from the root(s). 664 687 -
src/lemon/dijkstra.h
r1236 r1283 21 21 ///\file 22 22 ///\brief Dijkstra algorithm. 23 /// 24 ///\todo getPath() should be implemented! (also for BFS and DFS) 23 25 24 26 #include <lemon/list_graph.h> … … 656 658 ///@{ 657 659 660 ///Copies the shortest path to \c t into \c p 661 662 ///This function copies the shortest path to \c t into \c p. 663 ///If it \c \t is a source itself or unreachable, then it does not 664 ///alter \c p. 665 ///\todo Is it the right way to handle unreachable nodes? 666 ///\return Returns \c true if a path to \c t was actually copied to \c p, 667 ///\c false otherwise. 668 ///\sa DirPath 669 template<class P> 670 bool getPath(P &p,Node t) 671 { 672 if(reached(t)) { 673 p.clear(); 674 typename P::Builder b(p); 675 for(b.setStartNode(t);pred(t)!=INVALID;t=predNode(t)) 676 b.pushFront(pred(t)); 677 b.commit(); 678 return true; 679 } 680 return false; 681 } 682 658 683 ///The distance of a node from the root. 659 684
Note: See TracChangeset
for help on using the changeset viewer.