BAEL-2209 : Quicksort Dionis Prifti (#5365)

* Merged changes from the original repository.

* Added event streaming example with WebFlux.

* Deleted auto-generated code.

* Deleted auto-generated code.

* BAEL-2209 : Added java class and JUnit test for QuickSort implementation.

* Revert "Added event streaming example with WebFlux."

This reverts commit 21527b34643bbb0d1437a0ab3ef392024a391107.

* BAEL-2209: Removed main method from Quicksort class.

* BAEL-2209 : Added the implementation and unit test for 3-Way Quicksort.
This commit is contained in:
dionisPrifti
2018-10-02 04:41:18 +02:00
committed by maibin
parent 59a5313d96
commit ea22559064
4 changed files with 109 additions and 0 deletions
@@ -0,0 +1,17 @@
package com.baeldung.algorithms.quicksort;
import com.baeldung.algorithms.quicksort.QuickSort;
import org.junit.Assert;
import org.junit.Test;
public class QuickSortUnitTest {
@Test
public void givenIntegerArray_whenSortedWithQuickSort_thenGetSortedArray() {
int[] actual = { 9, 5, 1, 0, 6, 2, 3, 4, 7, 8 };
int[] expected = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
QuickSort.quickSort(actual, 0, actual.length-1);
Assert.assertArrayEquals(expected, actual);
}
}
@@ -0,0 +1,15 @@
package com.baeldung.algorithms.quicksort;
import org.junit.Assert;
import org.junit.Test;
public class ThreeWayQuickSortUnitTest {
@Test
public void givenIntegerArray_whenSortedWithThreeWayQuickSort_thenGetSortedArray() {
int[] actual = { 3, 5, 5, 5, 3, 7, 7, 3, 5, 5, 7, 3, 3 };
int[] expected = { 3, 3, 3, 3, 3, 5, 5, 5, 5, 5, 7, 7, 7 };
ThreeWayQuickSort.threeWayQuickSort(actual, 0, actual.length-1);
Assert.assertArrayEquals(expected, actual);
}
}