Add StalinSort (#5738)

This commit is contained in:
ANANT JAIN
2024-10-22 23:02:51 +05:30
committed by GitHub
parent c440c1d69e
commit 69a1424415
4 changed files with 167 additions and 0 deletions

View File

@@ -0,0 +1,53 @@
package com.thealgorithms.sorts;
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import org.junit.jupiter.api.Test;
public class AdaptiveMergeSortTest {
@Test
public void testSortIntegers() {
AdaptiveMergeSort adaptiveMergeSort = new AdaptiveMergeSort();
Integer[] input = {4, 23, 6, 78, 1, 54, 231, 9, 12};
Integer[] expected = {1, 4, 6, 9, 12, 23, 54, 78, 231};
Integer[] result = adaptiveMergeSort.sort(input);
assertArrayEquals(expected, result);
}
@Test
public void testSortStrings() {
AdaptiveMergeSort adaptiveMergeSort = new AdaptiveMergeSort();
String[] input = {"c", "a", "e", "b", "d"};
String[] expected = {"a", "b", "c", "d", "e"};
String[] result = adaptiveMergeSort.sort(input);
assertArrayEquals(expected, result);
}
@Test
public void testSortWithDuplicates() {
AdaptiveMergeSort adaptiveMergeSort = new AdaptiveMergeSort();
Integer[] input = {1, 3, 2, 2, 5, 4};
Integer[] expected = {1, 2, 2, 3, 4, 5};
Integer[] result = adaptiveMergeSort.sort(input);
assertArrayEquals(expected, result);
}
@Test
public void testSortEmptyArray() {
AdaptiveMergeSort adaptiveMergeSort = new AdaptiveMergeSort();
Integer[] input = {};
Integer[] expected = {};
Integer[] result = adaptiveMergeSort.sort(input);
assertArrayEquals(expected, result);
}
@Test
public void testSortSingleElement() {
AdaptiveMergeSort adaptiveMergeSort = new AdaptiveMergeSort();
Integer[] input = {42};
Integer[] expected = {42};
Integer[] result = adaptiveMergeSort.sort(input);
assertArrayEquals(expected, result);
}
}

View File

@@ -0,0 +1,53 @@
package com.thealgorithms.sorts;
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import org.junit.jupiter.api.Test;
public class StalinSortTest {
@Test
public void testSortIntegers() {
StalinSort stalinSort = new StalinSort();
Integer[] input = {4, 23, 6, 78, 1, 54, 231, 9, 12};
Integer[] expected = {4, 23, 78, 231};
Integer[] result = stalinSort.sort(input);
assertArrayEquals(expected, result);
}
@Test
public void testSortStrings() {
StalinSort stalinSort = new StalinSort();
String[] input = {"c", "a", "e", "b", "d"};
String[] expected = {"c", "e"};
String[] result = stalinSort.sort(input);
assertArrayEquals(expected, result);
}
@Test
public void testSortWithDuplicates() {
StalinSort stalinSort = new StalinSort();
Integer[] input = {1, 3, 2, 2, 5, 4};
Integer[] expected = {1, 3, 5};
Integer[] result = stalinSort.sort(input);
assertArrayEquals(expected, result);
}
@Test
public void testSortEmptyArray() {
StalinSort stalinSort = new StalinSort();
Integer[] input = {};
Integer[] expected = {};
Integer[] result = stalinSort.sort(input);
assertArrayEquals(expected, result);
}
@Test
public void testSortSingleElement() {
StalinSort stalinSort = new StalinSort();
Integer[] input = {42};
Integer[] expected = {42};
Integer[] result = stalinSort.sort(input);
assertArrayEquals(expected, result);
}
}