Сортировать по алгоритму иерархии - PullRequest
1 голос
/ 03 августа 2011

Как мне сделать этот алгоритм сортировки?

modules = {
    2:[4],   # element 2 must be after element 4
    1:[],
    3:[2,4], # element 3 must be after 2 and 3 elements
    4:[1]    # element 4 must be after element 1
}

Результат [1, 4, 2, 3] по условиям.

1 Ответ

4 голосов
/ 03 августа 2011

Это называется топологической сортировкой.Makefiles делают это, и есть стандартная утилита UNIX под названием tsort, которая сделает это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...