擅长:python、mysql、java
<p>我认为这会奏效,而且效率很高:</p>
<pre><code>items = [['A','B'], ['B','C'], ['C','E'], ['E','F'], ['F','G']]
nodes = dict(items)
changed = True
while changed:
changed = False
keys = nodes.keys()
for prevEl in keys:
if not prevEl in nodes: #may have been deleted
continue
nextEl = nodes[prevEl]
if nextEl in nodes:
tmp = nodes[nextEl]
del nodes[nextEl]
nodes[prevEl] = tmp
changed = True
</code></pre>