The document discusses four basic searching and sorting algorithms: binary search, linear search, bubble sort, and selection sort. It provides code examples in C++ for implementing each algorithm and explains their functions.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
13 views
Data Structure and Analysis Algorithm Lab Manual
The document discusses four basic searching and sorting algorithms: binary search, linear search, bubble sort, and selection sort. It provides code examples in C++ for implementing each algorithm and explains their functions.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6
Data Structure and Analysis Algorithm
Simple Searching and Sorting Algorithms:
1. Binary Searching // C++ program to implement iterative Binary Search #include <bits/stdc++.h> using namespace std;
// An iterative binary search function.
int binarySearch(int arr[], int l, int r, int x) { while (l <= r) { int m = l + (r - l) / 2;
// Check if x is present at mid
if (arr[m] == x) return m;
// If x greater, ignore left half
if (arr[m] < x) l = m + 1;
// If x is smaller, ignore right half
else r = m - 1; } // If we reach here, then element was not present return -1; } // Driver code int main(void) { int arr[] = { 2, 3, 4, 10, 40 }; int x = 10; int n = sizeof(arr) / sizeof(arr[0]); int result = binarySearch(arr, 0, n - 1, x); (result == -1) ? cout << "Element is not present in array" : cout << "Element is present at index " << result; return 0; } 2. Linear Search #include <stdio.h> main() { int LA[] = {1,3,5,7,8}; int item = 5, n = 5; int i = 0, j = 0; printf("The original array elements are :\n"); for(i = 0; i<n; i++) { printf("LA[%d] = %d \n", i, LA[i]); } while( j < n) { if( LA[j] == item ) { break; } j = j + 1; } printf("Found element %d at position %d\n", item, j+1); } 3. Bubble Sort Algorithm // C++ program for implementation // of Bubble sort #include <bits/stdc++.h> using namespace std; // A function to implement bubble sort void bubbleSort(int arr[], int n) { int i, j; for (i = 0; i < n - 1; i++) // Last i elements are already // in place for (j = 0; j < n - i - 1; j++) if (arr[j] > arr[j + 1]) swap(arr[j], arr[j + 1]); } // Function to print an array void printArray(int arr[], int size) { int i; for (i = 0; i < size; i++) cout << arr[i] << " "; cout << endl; } // Driver code int main() { int arr[] = { 5, 1, 4, 2, 8}; int N = sizeof(arr) / sizeof(arr[0]); bubbleSort(arr, N); cout << "Sorted array: \n"; printArray(arr, N); return 0; } 4. Selection Sort Algorithm // C++ program for implementation of // selection sort #include <bits/stdc++.h> using namespace std; //Swap function void swap(int *xp, int *yp) { int temp = *xp; *xp = *yp; *yp = temp; } void selectionSort(int arr[], int n) { int i, j, min_idx; // One by one move boundary of // unsorted subarray for (i = 0; i < n-1; i++) { // Find the minimum element in // unsorted array min_idx = i; for (j = i+1; j < n; j++) if (arr[j] < arr[min_idx]) min_idx = j; // Swap the found minimum element // with the first element swap(&arr[min_idx], &arr[i]); } } //Function to print an array void printArray(int arr[], int size) { int i; for (i=0; i < size; i++) cout << arr[i] << " "; cout << endl; } // Driver program to test above functions int main() { int arr[] = {64, 25, 12, 22, 11}; int n = sizeof(arr)/sizeof(arr[0]); selectionSort(arr, n); cout << "Sorted array: "; printArray(arr, n); return 0; } Advanced Searching and Sorting Algorithms Shell Sort Quick Sort Heap Sort Merge Sort
(Textbooks in Mathematics) Jeffrey Paul Wheeler - An Introduction To Optimization. With Applications in Machine Learning and Data Analytics-CRC Press (2024)