亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中進行列表排序的方法有哪些

發布時間:2020-09-14 10:03:28 來源:億速云 閱讀:223 作者:小新 欄目:編程語言

這篇文章主要介紹python中進行列表排序的方法有哪些,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

python列表排序:1、冒泡排序,是一種簡單的排序算法,它重復地遍歷要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來;2、插入排序,通過構建有序序列,對于未排序數據,在已排序序列中從后向前掃描,找到相應位置并插入。

python中進行列表排序的方法有哪些

1、冒泡排序

冒泡排序(Bubble Sort)是一種簡單的排序算法。它重復地遍歷要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。遍歷數列的工作是重復地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個算法的名字由來是因為越小的元素會經由交換慢慢“浮”到數列的頂端。

python中進行列表排序的方法有哪些

def bubble_sort(list):
    n = len(list)
    for i in range(n - 1):
        for j in range( 0,n - 1 - i):
            if list[j] > list[j + 1]:
                list[j], list[j + 1] = list[j + 1], list[j]
        # if list[i] > list[i + 1]:
        #     list[i], list[i + 1] = list[i + 1], list[i]
    print(list)
list=[2,4,6,8,1,3,5,7,9]
bubble_sort(list)
#結果:[1,2,3,4,5,6,7,8,9]

2、插入排序

插入排序(Insertion Sort)是一種簡單直觀的排序算法。它的工作原理是通過構建有序序列,對于未排序數據,在已排序序列中從后向前掃描,找到相應位置并插入。插入排序在實現上,在從后向前的掃描過程中,需要把已排序元素逐步向后挪位,為最新元素提供插入空間。

python中進行列表排序的方法有哪些

def insertion_sort(list):
  n = len(list)
  for i in range(1, n):
    for j in range(i, 0, -1):
      if list[j] < list[j - 1]:
        list[j], list[j - 1] = list[j - 1], list[j]
      else:
        break
  print(list)
insertion_sort([3,0,2,5,8,5,9,41,0,1,6])
#結果:[0, 0, 1, 2, 3, 5, 5, 6, 8, 9, 41]

3、選擇排序

選擇排序(Selection Sort )是一種簡單直觀的排序算法。它的工作原理如下:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后再從剩余未排序元素中繼續尋找最小(大)元素。放到已排序序列的末尾。以此類推,直到所有元素均排序完畢。

def selection_sort(list):
    n = len(list)
    for i in range(0, n -1):
        min_index = i
        for j in range(i + 1, n):
            if list[min_index] > list[j]:
                min_index = j
        if i != min_index:
            list[min_index], list[i] = list[i], list[min_index]
    print(list)
selection_sort([5,9,6,42,9,4,66,2,3,0,1])
#結果:0, 1, 2, 3, 4, 5, 6, 9, 9, 42, 66]

總結:

import random
# 隨機生成1-1000之間無序序列整數數據
def generator():
    random_data = []
    for i in range( 0, 10 ):
        random_data.append( random.randint( 1, 1000 ) )
    return random_data
# 冒泡排序
def bubble_sort(list):
    # 序列長度
    n = len( list )
    for i in range( 0, n ):
        for j in range( i , n ):
            if list[i] > list[j]:
                list[i], list[j] = list[j], list[i]
    return list
 # 選擇排序
def selection_sort(list):
    n = len(list)
    for i in range(0, n -1):
        min_index = i
        for j in range(i + 1, n):
            if list[min_index] > list[j]:
                min_index = j
        if i != min_index:
            list[min_index], list[i] = list[i], list[min_index]
    return list
#插入排序
def insertion_sort(list):
  n = len(list)
  for i in range(1, n):
    for j in range(i, 0, -1):
      if list[j] < list[j - 1]:
        list[j], list[j - 1] = list[j - 1], list[j]
      else:
        break
  return list
if __name__ == "__main__":
    # 生成隨機無序數據
    list = generator()
    # 打印無序數據
    print( '隨機生成的無序數據:',list )
    # 冒泡排序
    sorted_data = bubble_sort( list )
    #插入排序
    insertion_data=insertion_sort(list)
    #選擇排序
    selection_data=selection_sort( list )
    # 打印排序結果
    print( '冒泡排序:',sorted_data )
    print( '插入排序:', insertion_data )
    print( '選擇排序:', selection_data )
'''
結果:
隨機生成的無序數據: [300, 517, 591, 209, 204, 789, 417, 739, 803, 393]
冒泡排序: [204, 209, 300, 393, 417, 517, 591, 739, 789, 803]
插入排序: [204, 209, 300, 393, 417, 517, 591, 739, 789, 803]
選擇排序: [204, 209, 300, 393, 417, 517, 591, 739, 789, 803]
'''

以上是python中進行列表排序的方法有哪些的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

皋兰县| 延川县| 页游| 刚察县| 鄢陵县| 深州市| 县级市| 阿拉善盟| 独山县| 博客| 扎兰屯市| 清新县| 中西区| 巴林右旗| 上杭县| 长沙市| 泸州市| 潼关县| 德昌县| 南充市| 博罗县| 铜陵市| 昌乐县| 洞头县| 扎兰屯市| 永昌县| 勐海县| 濮阳市| 临泉县| 安西县| 泗阳县| 阜新市| 新乡市| 景洪市| 太谷县| 岗巴县| 阜宁县| 仁寿县| 广南县| 丰镇市| 开封市|