bisect二分查找插入算法-Python

bisect算法:在有序的数组中插入元素之后继续保持排序。我们都知道查找有序数据最快的算法是二分查找,这种搜索算法每一次比较都使搜索范围缩小一半,时间复杂度:O(logn)。

Python中有一个bisect模块,实现了list的二分查找插入算法。

bisect中几个重要的函数:

上面函数返回num应该插入到list的位置。如果list中已有所要插入的元素,bisect_left向左边插入,bisect_right向右边插入,bisect同bisect_right。

代码示例:

上面的bisect函数只返回要插入的位置,而下面的insort函数会把元素插入到对应的位置。

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注