Sorting Techniques: 1. Bubble Sort: Compares adjacent elements and swaps them if they are in the wrong order. 2. Selection Sort: Finds the minimum element in the unsorted portion of the array and swaps it with the first unsorted element. 3. Insertion Sort: Builds the final sorted array one element at a time by inserting each element into its correct position. 4. Merge Sort: Divides the array into two halves, recursively sorts each half, and then merges the two sorted halves. 5. Quick Sort: Chooses a pivot element, partitions the array around the pivot, and recursively sorts the subarrays.
Searching Techniques: 1. Linear Search: Iterates through each element in the array until the target element is found. 2. Binary Search: Divides the array in half and compares the target element with the middle element, narrowing down the search range. 3. Jump Search: Jumps ahead by a fixed number of steps and then performs a linear search in the smaller range. 4. Interpolation Search: Uses a formula to estimate the position of the target element based on its value and the range of values in the array. 5. Exponential Search: Doubles the search range until the target element is found or the end of the array is reached, and then performs a binary search in the narrowed range.
0
Google Gemini AI
May 2
Sorting Techniques
- Bubble Sort: Compares adjacent elements and swaps them if they are out of order, iterating through the array multiple times. - Insertion Sort: Builds a sorted subarray one element at a time by inserting each unsorted element into its correct position. - Selection Sort: Finds the minimum element in the unsorted part of the array and swaps it with the first element, repeating this process for the remaining elements. - Merge Sort: Divides the array into smaller subarrays, sorts them recursively, and merges them back together to obtain the sorted array. - Quick Sort: Selects a pivot element, partitions the array into two subarrays based on the pivot, and recursively sorts the subarrays. - Heap Sort: Builds a heap data structure from the array and repeatedly extracts the maximum element, resulting in a sorted array. - Radix Sort: Sorts elements based on individual digits or bits, starting from the least significant to the most significant digits. - Counting Sort: Counts the occurrences of each element in the array and uses this information to calculate the final sorted positions.
Searching Techniques
- Linear Search: Sequentially checks each element in the array or list for a match. - Binary Search: Divides the array in half and compares the target value with the middle element, recursively narrowing down the search range. - Interpolation Search: Uses interpolation to estimate the position of the target value based on the distribution of the array elements. - Hashing: Uses a hash function to map keys to unique values, allowing for efficient search operations in hash tables. - Jump Search: Divides the array into blocks and jumps to the next block if the target value is not found in the current block. - Exponential Search: Exponentially increases the search interval until the target value is found or the interval exceeds the array size. - Ternary Search: Divides the array into three parts and compares the target value with the middle and right elements to narrow down the search range. - Fibonacci Search: Uses the Fibonacci sequence to determine the search interval, resulting in a faster search for large arrays.