溫馨提示×

溫馨提示×

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

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

Python List 排序

發(fā)布時(shí)間:2020-07-02 05:29:46 來源:網(wǎng)絡(luò) 閱讀:336 作者:水木童 欄目:編程語言
import bisect

# insort等價(jià)于insort_right。
# 插入x,保持排序。如果x已經(jīng)在List中存在,則在x的右側(cè)插入。
# 如果List是降序,結(jié)果不正確,插入的x的位置可能是List的最左側(cè)(x < 中點(diǎn)值)或最右側(cè)(x >= 中點(diǎn)值)。
# bisect_right和bisect_left不會實(shí)際插入,返回將要插入的位置。

# CASE 1
print("CASE 1 ====================")
data = [13, 3, 9, 5, 11, 1]
# 降序排序data
data.sort(reverse=False)
print(data)

index = bisect.bisect_right(data, 5.0)
print(index)
bisect.insort(data, 5.0)
print(data)
index = bisect.bisect_right(data, 4.9)
print(index)
bisect.insort(data, 4.9)
print(data)
index = bisect.bisect_left(data, 3.0)
print(index)
bisect.insort_left(data, 3.0)
print(data)

# CASE 2
print("CASE 2 ====================")
data = [13, 3, 9, 5, 11, 1]

# 降序排序data
data.sort(reverse=True)
print(data)

index = bisect.bisect_right(data, 5.0)
print(index)
bisect.insort(data, 5.0)
print(data)
index = bisect.bisect_right(data, 4.9)
print(index)
bisect.insort(data, 4.9)
print(data)
index = bisect.bisect_right(data, 3.0)
print(index)
bisect.insort_left(data, 3.0)
print(data)

運(yùn)行結(jié)果:

CASE 1 ====================
[1, 3, 5, 9, 11, 13]
3
[1, 3, 5, 5.0, 9, 11, 13]
2
[1, 3, 4.9, 5, 5.0, 9, 11, 13]
1
[1, 3.0, 3, 4.9, 5, 5.0, 9, 11, 13]
CASE 2 ====================
[13, 11, 9, 5, 3, 1]
6
[13, 11, 9, 5, 3, 1, 5.0]
0
[4.9, 13, 11, 9, 5, 3, 1, 5.0]
0
[3.0, 4.9, 13, 11, 9, 5, 3, 1, 5.0]
向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI