Hi,

Simo you are right, the vertices have visited in the right way, but the edge 
handler has called in the wrong way.  IMHO we have to modify the code in order 
to fire the edge handler in the right way to avoid any error for the user.

the method "discoveryEdge" currently tells whether or not the algorithm should explore a subtree/branch and add related vertices to the stack/queue. So I see no conflict in the implementation. Maybe you are saying that the edge should be explored *right before* the vertex it leads to -- but why? AFAIK a standard graph search is only concerned with *vertices*. In that sense "finishEdge" becomes useless, as the responsibility for returning prematurely is entirely covered by "finishVertex". Am I raving mad? :-)

It's a good idea, Now we have implemented two separate methods that visit the 
graph for dfs and bfs. We should do a little refactoring and implement a unique 
method that switches between dfs and bfs simply changing the the type of 
visitedVertex. WDYT?

Yes! James' idea sounds good to me.

Ciao,
Claudio

I think "visitedVertices" should rather be called "seenVertices", as it is only 
needed to avoid adding vertices more than once to the stack/queue. Marco (and all), please see if 
the implementations look nicer with that change in mind (looks good to me).

+1

--
Claudio Squarcella
PhD student at Roma Tre University
http://www.dia.uniroma3.it/~squarcel
http://squarcella.com/


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to