Python 程式,把元素插入已排序的列表


在本文中,我們將探討如下問題陳述的解決方案。

問題陳述 − 給定一個列表,我們需要在不改變排序順序的情況下向其中插入一個元素

有兩種方法,如下所述−

方法 1:蠻力方法

示例

 演示

def insert(list_, n):
   # search
   for i in range(len(list_)):
      if list_[i] > n:
         index = i
         break
   # Insertion
   list_ = list_[:i] + [n] + list_[i:]
   return list_
# Driver function
list_ = ['t','u','t','o','r']
n = 'e'
print(insert(list_, n))

輸出

['e', 't', 'u', 't', 'o', 'r']

方法 2:使用 bisect 模組

示例

 演示

#built-in bisect module
import bisect
def insert(list_, n):
   bisect.insort(list_, n)
   return list_
list_ = ['t','u','t','o','r']
n = 'e'
print(insert(list_, n))

輸出

['e', 't', 'u', 't', 'o', 'r']

所有變數都在區域性範圍內宣告,上圖中可以看到它們的引用。

結論

在本文中,我們瞭解瞭如何向已排序的列表中插入元素。

更新日期: 24-Dec-2019

1K+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.