This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Ordering of Blocks based on Input/Output


> From: Dan Diebolt <dandiebolt@yahoo.com>
[snip]
> Starting from B1, there are only two ways to order the
> blocks so that each Block's inputs are provided by a
> proceeding Block's output:
>
> B1 , B2 , B3 , B4 , B5
> B1 , B3 , B2 , B4 , B5
>
> My problem is to produce *one* such feasible ordering of
> the blocks.
[snip]

I'm not sure if you're aware that you're asking for what's known as a
"topological sort" (a web search on this will find you a lot of stuff on
it).  I'll leave the XSLT implementation to others :-) but you should
know that an efficient solution has linear complexity: O(m+n) where m is
the number of edges and n is the number of nodes in the graph.  In
English :-), if the problem size doubles, the time to find a topological
sort should only double as well.

Dave



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]