bisect
moduleThe bisect
module provides functions that help maintain lists in order without
doing full sorting after each insertion.
It is also useful for searching in a sorted list. Search is done in logarithmic time, so it's better than linear search.
bisect.bisect_left(a, x)
returns the insertion point for x in a. If values of x are already inserted in returns the position to the left of
the first instance of x.
bisect.bisect_right(a, x)
(same as bisect.bisect
) returns the insertion point for x in a. If values of x are already inserted in returns the position of the right of
the last instance of x.
bisect.insort_left(a, x)
calls bisect.bisect_left
to get the insertion position and then calls a.insert
.
bisect.insort_right(a, x)
calls bisect.bisect_right
to get the insertion position and then calls a.insert
.