Binary search in python user input using function
Show Python Program for Binary Search; Through this tutorial, we would love to show you how to implement a program to binary search in python. Binary Search is applied on the sorted array or list of large size. It’s time complexity of O(log n) makes it very fast as compared to other sorting algorithms. To use binary search on a collection, the collection must first be sorted.
Algorithm of Binary SearchImplement binary search following the below steps:
Python Program for Binary Search with Function# Binary search function def binarySearchAlgo(xlist, key): a = 0 b = len(xlist) while a < b: c = (a + b)//2 if xlist[c] > key: b = c elif xlist[c] < key: a = c + 1 else: return c return -1 # input a list of elements xlist = input('Enter the sorted list of numbers: ') #split a element xlist = xlist.split() xlist = [int(x) for x in xlist] # search for in list key = int(input('The number to search for: ')) # call binary search function index = binarySearchAlgo(xlist, key) if index < 0: print('{} was not found.'.format(key)) else: print('{} was found at index {}.'.format(key, index)) After executing the program, the output will be: Enter the sorted list of numbers: 1 2 3 4 5 6 7 8 9 The number to search for: 8 8 was found at index 7. Python program for binary search using recursion function# Python code for recursive binary search # Returns index of key in xlist if present, else -1 def binarySearch (arr, l, r, x): # Check base case if r >= l: mid = l + (r - l)//2 # If element is present at the middle itself if arr[mid] == x: return mid # If element is smaller than mid, find in left sub array elif arr[mid] > x: return binarySearch(arr, l, mid-1, x) # Otherwise find the element in right subarray else: return binarySearch(arr, mid+1, r, x) else: # Element is not present in the list return -1 # input a list of elements xlist = input('Enter the sorted list of numbers: ') #split a element xlist = xlist.split() xlist = [int(x) for x in xlist] # search for in list key = int(input('The number to search for: ')) # Function call result = binarySearch(xlist, 0, len(xlist)-1, key) if result != -1: print('{} was found at index {}.'.format(key, result)) else: print('{} was not found.'.format(key)) After executing the program, the output will be: Enter the sorted list of numbers: 1 2 3 4 5 6 7 8 The number to search for: 6 6 was found at index 5. Recommended Python Programs
My name is Devendra Dode. I am a full-stack developer, entrepreneur, and owner of Tutsmake.com. I like writing tutorials and tips that can help other developers. I share tutorials of PHP, Python, Javascript, JQuery, Laravel, Livewire, Codeigniter, Node JS, Express JS, Vue JS, Angular JS, React Js, MySQL, MongoDB, REST APIs, Windows, Xampp, Linux, Ubuntu, Amazon AWS, Composer, SEO, WordPress, SSL and Bootstrap from a starting stage. As well as demo example. View all posts by Admin Post navigation |