What is Pattern Matching? Pattern matching is a fundamental problem in computer science that is employed in a wide range of applications. Pattern matching in the context of strings refers to detecting instances of a given pattern (substring) inside a bigger string. Algorithm for Pattern Matching: There are several popular algorithms and techniques for string […]
Given a decimal number as input, we need to write a program to convert the given decimal number into an equivalent binary number. Examples: Algorithm for Converting Decimal to Binary: Step 1: Divide the number by 2 and store the remainder in an array (modulus operator). Step 2: Divide the number by 2 using the […]
sequential search is a method for finding an element within a list. It sequentially checks each element of the list until a match is found or the whole list has been searched.
The idea of a dictionary used as a hash table to get and retrieve items using keys is often referred to as a mapping. Python already has a built-in dictionary object that serves as a Hash Table.
The shell sort improves on the insertion sort by breaking the original list into a number of smaller sub-lists, each of which is sorted using an insertion sort.
The selection sort improves on the bubble sort by making only one exchange for every pass through the list.
A quick sort first selects a value, which is called the pivot value. Although there are many different ways to choose the pivot value, we will simply use the first item in the list.
Merge sort is a recursive algorithm that continually splits a list in half. If the list is empty or has one item, it is sorted by definition (the base case)
Insertion Sort builds the final sorted array (or list) one item at a time.
The bubble sort makes multiple passes through a list. It compares adjacent items and exchanges those that are out of order. Each pass through the list places the next largest value in its proper place. In essence, each item “bubbles” up to the location where it belongs.