Skip to content

Commit 97d416e

Browse files
alxkmAlex Klymenko
andauthored
refactor: cleanup StoogeSort (TheAlgorithms#5283)
* refactor: cleanup StoogeSort * refactor: update DIRECTORY.md for StoogeSortTest --------- Co-authored-by: Alex Klymenko <[email protected]>
1 parent 9403214 commit 97d416e

3 files changed

Lines changed: 19 additions & 23 deletions

File tree

DIRECTORY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -891,6 +891,7 @@
891891
* [SortingAlgorithmTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/sorts/SortingAlgorithmTest.java)
892892
* [SortUtilsRandomGeneratorTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/sorts/SortUtilsRandomGeneratorTest.java)
893893
* [SortUtilsTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/sorts/SortUtilsTest.java)
894+
* [StoogeSortTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/sorts/StoogeSortTest.java)
894895
* [StrandSortTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/sorts/StrandSortTest.java)
895896
* [SwapSortTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/sorts/SwapSortTest.java)
896897
* [TimSortTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/sorts/TimSortTest.java)

src/main/java/com/thealgorithms/sorts/StoogeSort.java

Lines changed: 6 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,12 @@
77
public class StoogeSort implements SortAlgorithm {
88

99
@Override
10-
public <T extends Comparable<T>> T[] sort(T[] unsortedArray) {
11-
sort(unsortedArray, 0, unsortedArray.length);
12-
return unsortedArray;
10+
public <T extends Comparable<T>> T[] sort(T[] array) {
11+
if (array.length == 0) {
12+
return array;
13+
}
14+
sort(array, 0, array.length);
15+
return array;
1316
}
1417

1518
public <T extends Comparable<T>> T[] sort(T[] unsortedArray, int start, int end) {
@@ -28,24 +31,4 @@ public <T extends Comparable<T>> T[] sort(T[] unsortedArray, int start, int end)
2831
}
2932
return unsortedArray;
3033
}
31-
32-
public static void main(String[] args) {
33-
StoogeSort stoogeSort = new StoogeSort();
34-
35-
Integer[] integerArray = {8, 84, 53, 953, 64, 2, 202};
36-
// Print integerArray unsorted
37-
SortUtils.print(integerArray);
38-
39-
stoogeSort.sort(integerArray);
40-
// Print integerArray sorted
41-
SortUtils.print(integerArray);
42-
43-
String[] stringArray = {"g", "d", "a", "b", "f", "c", "e"};
44-
// Print stringArray unsorted
45-
SortUtils.print(stringArray);
46-
47-
stoogeSort.sort(stringArray);
48-
// Print stringArray sorted
49-
SortUtils.print(stringArray);
50-
}
5134
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package com.thealgorithms.sorts;
2+
3+
public class StoogeSortTest extends SortingAlgorithmTest {
4+
protected int getGeneratedArraySize() {
5+
return 1000;
6+
}
7+
8+
@Override
9+
SortAlgorithm getSortAlgorithm() {
10+
return new StoogeSort();
11+
}
12+
}

0 commit comments

Comments
 (0)