Home >Backend Development >Python Tutorial >Use of python_bisect module

Use of python_bisect module

高洛峰
高洛峰Original
2016-12-14 15:35:351012browse

This module has only a few functions.

Once you decide to use binary search, you should immediately think of using this module

import bisect  
  
L = [1,3,3,6,8,12,15]  
x = 3  
  
x_insert_point = bisect.bisect_left(L,x)  #在L中查找x,x存在时返回x左侧的位置,x不存在返回应该插入的位置..这是3存在于列表中,返回左侧位置1  
print x_insert_point  
  
x_insert_point = bisect.bisect_right(L,x)  #在L中查找x,x存在时返回x右侧的位置,x不存在返回应该插入的位置..这是3存在于列表中,返回右侧位置3  
  
print x_insert_point  
  
x_insort_left = bisect.insort_left(L,x)  #将x插入到列表L中,x存在时插入在左侧  
print L  
  
x_insort_rigth = bisect.insort_right(L,x) #将x插入到列表L中,x存在时插入在右侧      
  
print L

Result:


1
3
[1, 3, 3, 3, 6, 8, 12, 15]
[1, 3, 3, 3, 3, 6, 8, 12, 15]

In actual use

bisect.insort_left与 bisect.insort_right 差别不大,作用基本相同 。。。


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn