列表python排序

2021-10-10 05:02:21 字數 1181 閱讀 1623

​python題目:對列表[37,41.12,35,22,98,16,7,45,31]進行排序。

這裡不考慮.sort()方法。

#!/usr/bin/env python#_*_coding:utf-8_*_def merge(left, right):i, j = 0, 0result =#左右列表元素對比大小,然後加1while i < len(left) and j < len(right):if left[i] <= right[j]:i += 1else:j += 1#將大的值追加到列表右邊result += left[i:]result += right[j:]return resultdef merge_sort(lists):# 如果長度小於等於1,退出迴圈返回列表值if len(lists) <= 1:return lists# 取中間值,分成兩個列表num = len(lists)/2# 重複操作,直到只有乙個元素left = merge_sort(lists[:num])right = merge_sort(lists[num:])# 呼叫對比函式return merge(left, right)if __name__ == "__main__":lists = [37,41.12,35,22,98,16,7,45,31]s= merge_sort(lists)print s
檢視結果:

[7, 16, 22, 31, 35, 37, 41.12, 45, 98]

python 列表排序 python列表排序有哪些

python列表排序 1 氣泡排序,是一種簡單的排序演算法,它重複地遍歷要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來 2 插入排序,通過構建有序序列,對於未排序資料,在已排序序列中從後向前掃瞄,找到相應位置並插入。1 氣泡排序 氣泡排序 bubble sort 是一種簡單的排序...

python 列表排序

列表排序 s 1,2,3 s.reverse 倒序 s.sort 正序 sorted sorted iterable,cmp none,key none,reverse false new sorted list iterable 是可迭代型別 cmp 用於比較的函式,比較什麼由key決定,有預設值...

python列表排序

1.先來sort方法和sorted排序 sort方法不會生成新的列表,而sorted會 lst 3,2,9,4,34,43,22,11 lst.sort print lst print sorted lst 2.定義乙個列表,將原列表的最小值取出來,依次新增 lst1 def sort list t...