From a43099d1642b3de0e0783a9c0788cef069e1adde Mon Sep 17 00:00:00 2001 From: Yash Handa Date: Fri, 15 Oct 2021 01:03:34 +0530 Subject: [PATCH 1/3] binary search code --- binarysearch.java | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 binarysearch.java diff --git a/binarysearch.java b/binarysearch.java new file mode 100644 index 0000000..3784d02 --- /dev/null +++ b/binarysearch.java @@ -0,0 +1,30 @@ +class Binarysearch { + int binarySearch(int arr[], int l, int r, int x) + { + if (r >= l) { + int mid = l + (r - l) / 2; + + if (arr[mid] == x) + return mid; + + if (arr[mid] > x) + return binarySearch(arr, l, mid - 1, x); + + return binarySearch(arr, mid + 1, r, x); + } + + return -1; + } + public static void main(String args[]) + { + BinarySearch ob = new BinarySearch(); + int arr[] = { 2, 3, 4, 10, 40 }; + int n = arr.length; + int x = 10; + int result = ob.binarySearch(arr, 0, n - 1, x); + if (result == -1) + System.out.println("Element not present"); + else + System.out.println("Element found at index " + result); + } +} \ No newline at end of file From 3d121680901412a7d3950e71c4ceb04065d4ef2d Mon Sep 17 00:00:00 2001 From: Yash Handa Date: Fri, 15 Oct 2021 01:08:14 +0530 Subject: [PATCH 2/3] bubble sort --- bubblesort.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 bubblesort.java diff --git a/bubblesort.java b/bubblesort.java new file mode 100644 index 0000000..7a5e381 --- /dev/null +++ b/bubblesort.java @@ -0,0 +1,14 @@ + static void bubbleSort(int[] arr) { + int n = arr.length; + int temp = 0; + for(int i=0; i < n; i++){ + for(int j=1; j < (n-i); j++){ + if(arr[j-1] > arr[j]){ + //swap elements + temp = arr[j-1]; + arr[j-1] = arr[j]; + arr[j] = temp; + } + } + } + } \ No newline at end of file From 955af17ec9973d84ff54d273f8fceed7ccd04ab3 Mon Sep 17 00:00:00 2001 From: Yash Handa Date: Fri, 15 Oct 2021 01:10:24 +0530 Subject: [PATCH 3/3] Merge sort --- mergesort.java | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 mergesort.java diff --git a/mergesort.java b/mergesort.java new file mode 100644 index 0000000..23edb75 --- /dev/null +++ b/mergesort.java @@ -0,0 +1,74 @@ +class mergesort { + void merge(int arr[], int l, int m, int r) + { + int n1 = m - l + 1; + int n2 = r - m; + + int L[] = new int[n1]; + int R[] = new int[n2]; + + for (int i = 0; i < n1; ++i) + L[i] = arr[l + i]; + for (int j = 0; j < n2; ++j) + R[j] = arr[m + 1 + j]; + + int i = 0, j = 0; + + int k = l; + while (i < n1 && j < n2) { + if (L[i] <= R[j]) { + arr[k] = L[i]; + i++; + } + else { + arr[k] = R[j]; + j++; + } + k++; + } + + while (i < n1) { + arr[k] = L[i]; + i++; + k++; + } + + while (j < n2) { + arr[k] = R[j]; + j++; + k++; + } + } + + void sort(int arr[], int l, int r) + { + if (l < r) { + int m = (l + r) / 2; + sort(arr, l, m); + sort(arr, m + 1, r); + merge(arr, l, m, r); + } + } + + static void printArray(int arr[]) + { + int n = arr.length; + for (int i = 0; i < n; ++i) + System.out.print(arr[i] + " "); + System.out.println(); + } + + public static void main(String args[]) + { + int arr[] = { 12, 11, 13, 5, 6, 7 }; + + System.out.println("Given Array"); + printArray(arr); + + MergeSort ob = new MergeSort(); + ob.sort(arr, 0, arr.length - 1); + + System.out.println("\nSorted array"); + printArray(arr); + } +} \ No newline at end of file