lemon/dfs.h
changeset 1523 144ab0e4b09c
parent 1443 70781827eb2f
child 1529 c914e7ec2b7b
equal deleted inserted replaced
2:983d9b232f44 3:8a5dd6ccbd87
   514     
   514     
   515     ///Processes the next node.
   515     ///Processes the next node.
   516 
   516 
   517     ///Processes the next node.
   517     ///Processes the next node.
   518     ///
   518     ///
       
   519     ///\return The processed edge.
       
   520     ///
   519     ///\pre The stack must not be empty!
   521     ///\pre The stack must not be empty!
   520     void processNextEdge()
   522     Edge processNextEdge()
   521     { 
   523     { 
   522       Node m;
   524       Node m;
   523       Edge e=_stack[_stack_head];
   525       Edge e=_stack[_stack_head];
   524       if(!(*_reached)[m=G->target(e)]) {
   526       if(!(*_reached)[m=G->target(e)]) {
   525 	_pred->set(m,e);
   527 	_pred->set(m,e);
   537 	  {
   539 	  {
   538 	    _processed->set(n,true);
   540 	    _processed->set(n,true);
   539 	    --_stack_head;
   541 	    --_stack_head;
   540 	  }
   542 	  }
   541       }
   543       }
       
   544       return e;
   542     }
   545     }
   543       
   546       
   544     ///\brief Returns \c false if there are nodes
   547     ///\brief Returns \c false if there are nodes
   545     ///to be processed in the queue
   548     ///to be processed in the queue
   546     ///
   549     ///