Add permutations and combinations (#2932)

This commit is contained in:
cpiao3
2022-02-09 13:57:14 -05:00
committed by GitHub
parent 101d08ae24
commit 12c67bc501
4 changed files with 170 additions and 0 deletions

View File

@ -0,0 +1,33 @@
package com.thealgorithms.backtracking;
import org.junit.jupiter.api.Test;
import java.util.Arrays;
import java.util.List;
import java.util.TreeSet;
import static org.junit.jupiter.api.Assertions.*;
public class CombinationTest {
@Test
void testNoElement()
{
List<TreeSet<Integer>> result = Combination.combination(new Integer[]{1, 2}, 0);
assertTrue(result == null);
}
@Test
void testLengthOne()
{
List<TreeSet<Integer>> result = Combination.combination(new Integer[]{1, 2}, 1);
assertTrue(result.get(0).iterator().next() == 1);
assertTrue(result.get(1).iterator().next() == 2);
}
@Test
void testLengthTwo()
{
List<TreeSet<Integer>> result = Combination.combination(new Integer[]{1, 2}, 2);
Integer[] arr = result.get(0).toArray(new Integer[2]);
assertTrue(arr[0] == 1);
assertTrue(arr[1] == 2);
}
}