1.排序是個大問題,通常情況下,我們希望我們的排序是時間複雜度爲o(n)而絕對不是o(n*n),尤其是針對大量數據的情況(百萬級或者千萬級)
在python裏面,我們一般使用它自帶的API,當然,如果你想了解原理,可以去學習我的數據結構系列,裏面會講的很清楚,只是現在的話,我沒空更新,果斷時間吧。
1.1 如果你是對純數字排序
你可以使用sorted
1.2 如果你希望用排序一個鍵值對模型,鍵值是排序的參考:
請重新鍵值對模型的__it__函數(iterator)
class Model(object):
def __init__(self, key, value):
self.key = key
self.value = value
def __lt__(self, other):
return self.key < other.key
def __str__(self):
return '({0},{1})'.format(self.key,self.value)
pass
d1 = [Model(2,'2'),Model(0,'0'),Model(4,'4'),Model(7,'7')]
d2 =sorted(d1)
for i in d2:
print(i.__str__())
pass