Graph algorithms are often meant to be very fast, and different algorithms 
necessitate different representations. Two popular representations are 
adjacency lists and shared structures. It also isn't right to call them lists 
unless you're talking about multigraphs. Indeed successor nodes should be 
treated as a set, but Racket's sets have quite a bit of overhead, especially 
for small sets. Should it be fast to compute predecessor nodes? There are too 
many considerations for there to be just one blessed representation, IMHO.
-Ian
----- Original Message -----
From: "Tony Garnock-Jones" <to...@ccs.neu.edu>
To: "Pierpaolo Bernardi" <olopie...@gmail.com>
Cc: "Racket mailing list" <users@racket-lang.org>
Sent: Monday, December 3, 2012 10:57:27 AM GMT -05:00 US/Canada Eastern
Subject: Re: [racket] minimum spanning tree

On 12/03/2012 06:24 AM, Pierpaolo Bernardi wrote:
> If nobody precedes me, I'll submit a proposal.

It's probably not suitable as a proposal itself, but about a year ago I 
built https://github.com/tonyg/mixfix/blob/master/graph.rkt, inspired by 
the Erlang standard graph library 
https://github.com/tonyg/mixfix/blob/master/graph.rkt.

(Looking at it again I'm really unsure why I used a hashtable instead of 
a set in a couple of places. Weird.)

Regards,
   Tony
____________________
  Racket Users list:
  http://lists.racket-lang.org/users
____________________
  Racket Users list:
  http://lists.racket-lang.org/users

Reply via email to