diff --git a/src/main/java/com/github/pedrovgs/problem74/RecursiveBubbleSort.java b/src/main/java/com/github/pedrovgs/problem74/RecursiveBubbleSort.java new file mode 100644 index 00000000..2f013bef --- /dev/null +++ b/src/main/java/com/github/pedrovgs/problem74/RecursiveBubbleSort.java @@ -0,0 +1,44 @@ +package com.github.pedrovgs.problem74; + +//Java program for recursive implementation +//of Bubble sort + +import java.util.Arrays; + +public class RecursiveBubbleSort +{ + // A function to implement bubble sort + static void bubbleSort(int arr[], int n) + { + // Base case + if (n == 1) + return; + + // One pass of bubble sort. After + // this pass, the largest element + // is moved (or bubbled) to end. + for (int i=0; i arr[i+1]) + { + // swap arr[i], arr[i+1] + int temp = arr[i]; + arr[i] = arr[i+1]; + arr[i+1] = temp; + } + + // Largest element is fixed, + // recur for remaining array + bubbleSort(arr, n-1); + } + + // Driver Method + public static void main(String[] args) + { + int arr[] = {64, 34, 25, 12, 22, 11, 90}; + + bubbleSort(arr, arr.length); + + System.out.println("Sorted array : "); + System.out.println(Arrays.toString(arr)); + } +} diff --git a/src/main/java/com/github/pedrovgs/sortingalgorithm/StoogeSort.java b/src/main/java/com/github/pedrovgs/sortingalgorithm/StoogeSort.java new file mode 100644 index 00000000..f90f3341 --- /dev/null +++ b/src/main/java/com/github/pedrovgs/sortingalgorithm/StoogeSort.java @@ -0,0 +1,29 @@ +package com.github.pedrovgs.sortingalgorithm; + +import java.util.Arrays; + +public class StoogeSort { + public static void main(String[] args) { + int[] nums = {1, 4, 5, 3, -6, 3, 7, 10, -2, -5}; + stoogeSort(nums); + System.out.println(Arrays.toString(nums)); + } + + public static void stoogeSort(int[] L) { + stoogeSort(L, 0, L.length - 1); + } + + public static void stoogeSort(int[] L, int i, int j) { + if (L[j] < L[i]) { + int tmp = L[i]; + L[i] = L[j]; + L[j] = tmp; + } + if (j - i > 1) { + int t = (j - i + 1) / 3; + stoogeSort(L, i, j - t); + stoogeSort(L, i + t, j); + stoogeSort(L, i, j - t); + } + } +} \ No newline at end of file