[Python] Sorting
概覽
Syntax | Description | Average Time Complexity | Space Complexity |
list_b = sorted(list_a) | 回傳排序好的新list | O(n * log(n)); n = len(list_a) | O(n) |
list_a.sort() | 將list_a排序 | O(n * log(n)) | O(n) |
常用auguments
key
排序時以key作為基準
範例:以第 i 維元素做排序時 ⇒ key=lambda x:x[i]
Sort by multiple keys
key=lambda x:(x[i], x[j])
維度 i 的優先度高於維度 j
當元素第 i 維的值相同時,這些相同值的元素會再以第 j 維的值來排序
範例:
根據 value 由大到小進行排序
value 相同的場合,根據 key 的 lexicographical order 排序
sorted(d.items(), key=lambda x:(-x[1], x[0]))
reverse=False
預設為False;由小至大排序。若改作True則由大至小排序。
Last Updated on 2024/12/13 by A1go