On Oct 30, 11:01 am, "Matthew D. Swank" <[EMAIL PROTECTED]>
wrote:
> On Oct 30, 8:57 am, Rich Hickey <[EMAIL PROTECTED]> wrote:
>
>
>
> > On Oct 29, 6:27 pm, ccahoon <[EMAIL PROTECTED]> wrote:
>
> > > Hello,
>
> > > I'm wondering what would be a good way to represent a mincut, maximum
> > > flow problem in Clojure. A set of weighted edges makes sense to me,
> > > but I am not sure how best to represent the edges so I can use them as
> > > a key in a map. Pardon me for asking such a noob question on this
> > > board. I am new to graph representations.
>
> > > For example, if I have an edge (p, q) with weight 2, what is a good
> > > way to represent that so I can access weights with the edges?
>
> > The graph libraries others have mentioned probably have a lot of nice
> > features, but I just wanted to say that [x y] vectors or {:x 1 :y 2}
> > maps make perfectly fine keys if you want to roll your own in Clojure.
>
> > Also, this simple TSP solver uses graphs:
>
> >http://groups.google.com/group/clojure/msg/df7b0f5673513b85
>
> > Rich
>
> How are graphs with cycles represented in a purish functional
> language? I guess explicit node indexing can be used instead of
> references, but I would think that would get slow for large graphs.
> Traversal ends up being a interpretation on node indices instead of a
> simple dereference.
I have a paper [1] on my "to read" list that should answer just that
question. It implements a functional view of graphs for ML-family
languages, but it should be useful in Clojure as well. I'll probably
take a crack at implementing this when I have the time, but I have yet
to find time to even read the paper, so don't let my intentions stop
anyone.
-Adam
[1] http://web.engr.oregonstate.edu/~erwig/papers/abstracts.html#JFP01
>
> Matt
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---