# Prioritization function needed (recursive help!)

Discussion in 'Python' started by rh0dium, Jan 21, 2008.

1. ### rh0diumGuest

Hi all,

I need some help on writing a recursive priority function

Given a list = [ A, B, C, D]

Where the following constraints are in place:

A depends on [B, C]
C depends on

Figure out real order that prioritizes these.

Output [ B, C, A, D ] is valid. (Actually D could be anywhere in it
as it doesn't matter..)

I am really struggling on simply how to organize the data and write
the corresponding function - I tried classes but I don't know if
that's the best approach. See my other post on this.

Thanks

rh0dium, Jan 21, 2008

2. ### Paul RubinGuest

rh0dium <> writes:
> I am really struggling on simply how to organize the data and write
> the corresponding function - I tried classes but I don't know if
> that's the best approach. See my other post on this.

Anyway, look up "topological sorting" in a CS textbook or on Wikipedia.

Paul Rubin, Jan 21, 2008

3. ### Arnaud DelobelleGuest

On Jan 21, 10:30 pm, rh0dium <> wrote:
> Hi all,
>
> I need some help on writing a recursive priority function
>
> Given a list = [ A, B, C, D]
>
> Where the following constraints are in place:
>
> A depends on [B, C]
> C depends on
>
> Figure out real order that prioritizes these.
>
> Output [ B, C, A, D ] is valid.  (Actually D could be anywhere in it
> as it doesn't matter..)
>
> I am really struggling on simply how to organize the data and write
> the corresponding function - I tried classes but I don't know if
> that's the best approach.  See my other post on this.
>
> Thanks

There's a very recent thread on this subject (topological sort)

--
Arnaud

Arnaud Delobelle, Jan 21, 2008
4. ### Kent JohnsonGuest

Kent Johnson, Jan 21, 2008