From c5b20247da57ee3c8eb34dca81897d8ab23b7ca1 Mon Sep 17 00:00:00 2001 From: Pallav Goswami Date: Mon, 21 Oct 2024 19:53:00 +0530 Subject: [PATCH] Pallav: Added binary search implementation --- Java/BinarySearch.java | 23 +++++++++++ Selection Sort | 87 +++++++++++++++++++----------------------- 2 files changed, 62 insertions(+), 48 deletions(-) create mode 100644 Java/BinarySearch.java diff --git a/Java/BinarySearch.java b/Java/BinarySearch.java new file mode 100644 index 000000000..a4d5ec796 --- /dev/null +++ b/Java/BinarySearch.java @@ -0,0 +1,23 @@ +/** + * BinarySearch + */ +public class BinarySearch { + + public static void main(String[] args) { + int[] arr = {2, 3, 4, 5, 6}; + int target = 4; + int start = 0; + int end = arr.length - 1; + while (start <= end) { + int mid = start + (end - start) / 2; + if (arr[mid] == target) { + System.out.println(mid); + break; + } else if (arr[mid] > target) { + end = mid - 1; + } else { + start = mid + 1; + } + } + } +} \ No newline at end of file diff --git a/Selection Sort b/Selection Sort index 74c560ebc..b6ef61871 100644 --- a/Selection Sort +++ b/Selection Sort @@ -1,48 +1,39 @@ -#include -using namespace std; - -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: \n"; - printArray(arr, n); - return 0; -} - +#include +using namespace std; +void swapping(int &a, int &b) { //swap the content of a and b + int temp; + temp = a; + a = b; + b = temp; +} +void display(int *array, int size) { + for(int i = 0; i> n; + int arr[n]; //create an array with given number of elements + cout << "Enter elements:" << endl; + for(int i = 0; i> arr[i]; + } + cout << "Array before Sorting: "; + display(arr, n); + selectionSort(arr, n); + cout << "Array after Sorting: "; + display(arr, n); +}