**Problem:**

Hello guys,

I am new to python language and I have completed the core python and just moved toward the advance python and object-oriented programming language but I want to implement the bisect algorithm in python don't know how to achieve this as this was the question that I was facing in the hackerrank and I don't know how to complete it.

### Solution:

I got you problem you want to implement the bisect alogithm you do it easily in python firstly see what is the bisect algorithm in python. In python we can implement it very easily than in any other language.

**Defination:**

The purpose of Bisect algorithm is to find a position in list where an element needs to be inserted to keep the list sorted.

**Important Bisection Functions:
1) bisect(list, num, beg, end)
2) bisect_left(list, num, beg, end)
3) bisect_right(list, num, beg, end)**

The working of the above algorithm is same just little difference in it the first take the element to be inserted and second take the first poison of the list and third take the last positon of the list.

**Example:**

```
# Python code to demonstrate the working of
# bisect(), bisect_left() and bisect_right()
# importing "bisect" for bisection operations
import bisect
# initializing list
li = [1, 3, 4, 4, 4, 6, 7]
# using bisect() to find index to insert new element
# returns 5 ( right most possible index )
print ("The rightmost index to insert, so list remains sorted is : ", end="")
print (bisect.bisect(li, 4))
# using bisect_left() to find index to insert new element
# returns 2 ( left most possible index )
print ("The leftmost index to insert, so list remains sorted is : ", end="")
print (bisect.bisect_left(li, 4))
# using bisect_right() to find index to insert new element
# returns 4 ( right most possible index )
print ("The rightmost index to insert, so list remains sorted is : ", end="")
print (bisect.bisect_right(li, 4, 0, 4))
```

**Output:**

```
The rightmost index to insert, so list remains sorted is : 5
The leftmost index to insert, so list remains sorted is : 2
The rightmost index to insert, so list remains sorted is : 4
```

I hope this was going to help you about the bisect implementation, Happy coding!!