python內(nèi)置模塊bisect實現(xiàn)了二分查找及對有序列表的插入操作巡扇,bisect.bisect可以找出新元素應該被插入到哪個位置才能保持原列表的有序性浇冰,而bisect.insort則確實地將新元素插入到那個位置上去适瓦,看下面demo:
可以看到屋摔,當要插入的元素與列表中原有元素相同時始赎,是插入到所有原有元素的下一個下標位邦泄,在這里我們要注意的是:bisect模塊的函數(shù)不會判斷原列表是否是有序的迹炼,因為這樣做的話占用系統(tǒng)資源就太多了砸彬,因此,將它們用于無序列表雖然不會報錯斯入,但可能會導致不正確的結(jié)果哦砂碉。