擅长:python、mysql、java
<p>通常,排序依赖项是用<a href="https://en.wikipedia.org/wiki/Topological_sorting" rel="nofollow">topological sort</a>完成的。然而,这个特定的情况足够简单(每个项目都有一个传入和输出边),不需要完全拓扑排序。</p>
<p>您所拥有的不是链接列表,而是链接列表。所以,只要将其重新构造成类似链接列表的内容并遍历它:</p>
<pre><code># transform into a source:target dictionary
links = {d['pred'] if d['pred'] else 'root':d['id'] for d in unordered_linked_list}
# follow links and print
source = 'root'
while source in links:
print links[source]
source = links[source]
</code></pre>