成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python數據結構與算法—維護有序列表bisect

開發 后端 算法
bisect實現了一個算法來向列表中插入元素,同時仍保持列表有序。本篇,將詳細介紹bisect庫高效率的玩轉列表。

[[402075]]

前言

bisect實現了一個算法來向列表中插入元素,同時仍保持列表有序。

本篇,將詳細介紹bisect庫高效率的玩轉列表。

有序插入

首先,我們來看看bisect庫是如何實現列表的插入的。具體代碼如下所示:

  1. import bisect 
  2.  
  3. a = [7, 5, 4, 1, 9, 8, 2, 3, 6, 0, 5] 
  4. print(a) 
  5. new_a = [] 
  6. for i in a: 
  7.     position = bisect.bisect(new_a, i) 
  8.     bisect.insort(new_a, i) 
  9.     print(position, new_a) 

 運行之后,效果如下:

可以看到,bisect會自動排序進行插入,position為插入的索引位置。當然,對于此類插入如果直接構建列表,然后排序,可能速度更快。不過這只僅僅對于短列表而言非常的快,對于非常長的列表而言,使用上面這種插入排序方式可以大大節省時間和內存,尤其是比較兩個列表成員的操作需要開銷很大的計算量時。

重復值處理

在實際的列表處理中,我們可能處理重復的值。如前文所示,多余的5是默認插入到重復值右邊的,也就是說相當于使用insort_right()函數。同理,那么左邊我們就可以用insort_left()函數。

  1. import bisect 
  2.  
  3. a = [7, 5, 4, 1, 9, 8, 2, 3, 6, 0, 5] 
  4. print(a) 
  5. new_a = [] 
  6. for i in a: 
  7.     position = bisect.bisect_left(new_a, i) 
  8.     bisect.insort_left(new_a, i) 
  9.     print(position, new_a) 

 運行之后,效果如下:

讀者可以對比一下上面兩個圖片,最后一行的索引變化。可以看到,一個是6,一個是5,因為我們主動變更,把重復值默認插入到左邊了。

 

責任編輯:姜華 來源: 今日頭條
相關推薦

2020-10-21 14:57:04

數據結構算法圖形

2023-03-08 08:03:09

數據結構算法歸并排序

2023-10-27 07:04:20

2023-09-25 12:23:18

Python

2023-03-10 08:07:39

數據結構算法計數排序

2023-03-02 08:15:13

2023-03-07 08:02:07

數據結構算法數列

2023-04-27 09:13:20

排序算法數據結構

2023-03-13 10:08:31

數據結構算法

2023-11-06 06:43:23

單鏈表查詢數據結構

2017-08-31 09:45:43

JavaArrayList數據

2023-09-15 10:33:41

算法數據結構

2023-02-08 07:52:36

跳躍表數據結構

2023-10-30 08:31:42

數據結構算法

2021-05-12 09:07:09

Java數據結構算法

2021-06-11 06:10:09

Python數據結構算法

2020-12-31 05:31:01

數據結構算法

2021-01-28 07:33:34

JavaScript鏈表數據

2020-10-30 09:56:59

Trie樹之美

2021-03-09 06:30:32

JAVA數據結構算法
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 99这里只有精品 | 伊人影院在线观看 | 中文字幕人成乱码在线观看 | 亚洲欧美成人影院 | 久久av一区| 久久日韩精品一区二区三区 | 国产一区二区三区 | 91精品久久久久久久久久 | 成人三级视频 | 久久伦理电影 | 91久久精品日日躁夜夜躁国产 | 99国产视频 | 美女视频一区二区三区 | 高清视频一区二区三区 | 久久久亚洲精品视频 | 精品一区二区三区在线观看国产 | h片在线播放 | 亚洲精品一区中文字幕乱码 | 天天干夜夜操 | 国产99视频精品免视看9 | 黄色在线网站 | 国产精品视频免费看 | 国外成人在线视频 | 男女网站免费观看 | 九九亚洲精品 | 欧美在线观看一区 | 性视频一区 | 免费av播放 | 欧美日韩一区二区在线观看 | 91麻豆精品国产91久久久更新资源速度超快 | 国产精品乱码一区二区三区 | 亚洲国产成人在线视频 | 久久久久久精 | 亚洲精品一区二区三区 | 超碰免费在线观看 | 视频一二三区 | 成人在线精品 | 特级丰满少妇一级aaaa爱毛片 | av大片| 黄色欧美视频 | 欧美激情一区二区三级高清视频 |