You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by David Walend <dw...@users.sourceforge.net> on 2002/03/31 04:51:27 UTC
graph2 and JDigraph
I mentioned my JDigraph project
(https://sourceforge.net/projects/jdigraph/) to one of the Struts
committers at JavaOne. He suggested I have a look at the graph library
in the commons sandbox and avoid duplicating work.
From the CVS repository, it looks like graph2 is structured more like
the graph package from Brown. JDigraph is patterned after the
Collections kit from Sun. I've focused more on structure, state and
classic algorithms, but you might be able to get some milage out of it.
I don't think we're duplicating work; they don't match.
In JDigraph, nodes and edges are Objects that don't implement a special
interface. I classified digraphs as either generic-edge (all edges are
essentially the same object and are represented by existing or not),
common-edge (edges are objects, and the same object can be an edge
between many nodes), and unique-edge (each edge object is unique in the
set of edges in a digraph). I've got a nice kit of shortest-path
algorithms for CEDigraphs, and am looking for time to build one for
GEDigraphs. Instead of enforcing acyclic graphs, I implemented the
Bellman-Ford test. JDigraph also boasts solid test code for most public
methods.
Judging by the timing and volume of downloads and (lack of) support
questions, I think JDigraph's main users are students trying to figure
out Dijkstra's algorithm late in the semester. (Professors will notice
that JDigraph's Dijkstra implementation runs backwards...)
Feel free to try it out and mine it for ideas. Let me know if you see
any bugs if you find them.
Thanks,
Dave
--
David Walend
david@walend.net
http://www.walend.net
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>