Class CombinationsTest

java.lang.Object
topics.dynamic.combinations.CombinationsTest

@DisplayName("Combinations - Dynamic Programming vs Recursion") class CombinationsTest extends Object

Validation Suite for Combinations

Verifies the mathematical accuracy of the combination calculations and highlights the extreme performance disparity between Dynamic Programming and Naive Recursion.

Author:
vicegd
  • Constructor Details

    • CombinationsTest

      CombinationsTest()
  • Method Details

    • setup

      @BeforeAll static void setup()
    • shouldCalculateStandardDeckCombinations

      @Test @DisplayName("DP: Standard deck of cards (52 choose 5)") void shouldCalculateStandardDeckCombinations()
    • shouldCalculateLargeScaleCombinations

      @Test @DisplayName("DP: Large dataset calculation (100 choose 15)") void shouldCalculateLargeScaleCombinations()
    • shouldCalculateSmallScaleCombinations

      @Test @DisplayName("DP: Small dataset for matrix logging (9 choose 5)") void shouldCalculateSmallScaleCombinations()
    • shouldDemonstrateRecursiveLagOnModerateDatasets

      @Test @DisplayName("Recursion: Noticeable lag on moderate datasets (30 choose 15)") void shouldDemonstrateRecursiveLagOnModerateDatasets()