See More

public class SortingAlgorithms { public static void bubbleSort(int[] arr) { boolean swapped; for (int i = 0; i < arr.length - 1; i++) { swapped = false; for (int j = 0; j < arr.length - 1 - i; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; swapped = true; } } if (!swapped) break; } } public static void selectionSort(int[] arr) { for (int i = 0; i < arr.length - 1; i++) { int minIdx = i; for (int j = i + 1; j < arr.length; j++) { if (arr[j] < arr[minIdx]) { minIdx = j; } } int temp = arr[minIdx]; arr[minIdx] = arr[i]; arr[i] = temp; } } public static void insertionSort(int[] arr) { for (int i = 1; i < arr.length; i++) { int key = arr[i]; int j = i - 1; while (j >= 0 && arr[j] > key) { arr[j + 1] = arr[j]; j--; } arr[j + 1] = key; } } public static void mergeSort(int[] arr, int l, int r) { if (l < r) { int m = l + (r - l) / 2; mergeSort(arr, l, m); mergeSort(arr, m + 1, r); merge(arr, l, m, r); } } private static void merge(int[] arr, int l, int m, int r) { int[] L = new int[m - l + 1]; int[] R = new int[r - m]; for (int i = 0; i < L.length; i++) { L[i] = arr[l + i]; } for (int j = 0; j < R.length; j++) { R[j] = arr[m + 1 + j]; } int i = 0, j = 0, k = l; while (i < L.length && j < R.length) { if (L[i] <= R[j]) { arr[k] = L[i++]; } else { arr[k] = R[j++]; } k++; } while (i < L.length) { arr[k++] = L[i++]; } while (j < R.length) { arr[k++] = R[j++]; } } public static void quickSort(int[] arr, int low, int high) { if (low < high) { int pi = partition(arr, low, high); quickSort(arr, low, pi - 1); quickSort(arr, pi + 1, high); } } private static int partition(int[] arr, int low, int high) { int pivot = arr[high]; int i = (low - 1); for (int j = low; j < high; j++) { if (arr[j] <= pivot) { i++; int temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } } int temp = arr[i + 1]; arr[i + 1] = arr[high]; arr[high] = temp; return i + 1; } public static void main(String[] args) { int[] sampleArray = {64, 34, 25, 12, 22, 11, 90}; System.out.println("Original Array:"); for (int value : sampleArray) { System.out.print(value + " "); } System.out.println(); // You can call any sorting method here bubbleSort(sampleArray); System.out.println("Sorted Array:"); for (int value : sampleArray) { System.out.print(value + " "); } System.out.println(); } }