擅长:python、mysql、java
<p>据我所知,sort函数不能满足您的需要。排序算法假定您没有更改关于如何在每个其他位置比较元素的规则。你知道吗</p>
<p>这里有一个O(N^2)算法来做你想做的事情:</p>
<pre class="lang-py prettyprint-override"><code>data = [ (2,2), (0,5), (8,0), (9,8), (7,14), (13,12), (14,13) ]
coordinate = 0
sorted_data = []
while data:
largest = max(data, key=lambda x: x[coordinate])
sorted_data.append(largest)
data.pop(data.index(largest))
coordinate = (coordinate + 1) % 2
print(sorted_data)
</code></pre>