Add binary search solution
This commit is contained in:
		
							
								
								
									
										23
									
								
								coding/python/binary_search.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								coding/python/binary_search.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,23 @@ | ||||
| #!/usr/bin/env python | ||||
|  | ||||
| import random | ||||
|  | ||||
| rand_num_li = sorted([random.randint(1, 50) for iter in range(10)]) | ||||
| target = random.randint(1, 50) | ||||
|  | ||||
| def binary_search(li, le, ri, target): | ||||
|     if le <= ri: | ||||
|         mid = ri + le // 2 | ||||
|         if li[mid] == target: | ||||
|             return mid | ||||
|         elif li[mid] < target: | ||||
|             return binary_search(li, mid + 1, ri, target) | ||||
|         else: | ||||
|             return binary_search(li, le, mid - 1, target) | ||||
|     else: | ||||
|         return -1 | ||||
|  | ||||
|  | ||||
| print("List: {}\nTarget: {}\nIndex: {}".format( | ||||
|     rand_num_li, target, | ||||
|     binary_search(rand_num_li, 0, len(rand_num_li) - 1, target))) | ||||
		Reference in New Issue
	
	Block a user