zl程序教程

您现在的位置是:首页 >  系统

当前栏目

bisect 二分查找模块

模块 查找 二分
2023-09-14 09:01:25 时间
import bisect
a = [0, 1, 5, 7, 19, 25]
a1 = bisect.bisect(a, 6)

# 这里返回的位置是3是因为:
# 为了保证插入这个数,还能保持列表升序,这个位置显而易见就在值5后面
print(a1) 

import bisect

a = [0, 4, 5, 7, 19, 25]


# 这个返回3,是因为bisect会把新的元素放在相等元素后面即 2 + 1 = 3
a1 = bisect.bisect(a, 5)

# 这个返回2,是因为bisect_left会把新的元素放在相等元素前面即原来值5的索引位置2
a2 = bisect.bisect_left(a, 5)

print(a1, a2) # 3, 2