-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathBinary_Search.py
More file actions
35 lines (29 loc) · 909 Bytes
/
Binary_Search.py
File metadata and controls
35 lines (29 loc) · 909 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# Binary Search with Time Complexity of O(logN):
def Binary_Search(array,k):
len_array=len(array)
result=-1
if array==[k]:
return 0
else:
low=0
high=len_array-1
while(low<=high):
middle=(low+high)//2
if array[middle]>k:
high=middle-1
elif array[middle]<k:
low=middle+1
elif array[middle]==k:
return middle
if low>high:
return result
return result
if __name__=='__main__':
array=input("Enter array").split(',')
array=list(map(int,array))
search_element=int(input("Enter element to be searched"))
result=Binary_Search(array,search_element)
if result==-1:
print("Element not found")
else:
print("Element found at index ",result)