- main
- java
- com
- thealgorithms
- audiofilters
- backtracking
- bitmanipulation
- BcdConversion
- BinaryPalindromeCheck
- BitSwap
- BooleanAlgebraGates
- ClearLeftmostSetBit
- CountLeadingZeros
- CountSetBits
- FindNthBit
- GrayCodeConversion
- HammingDistance
- HigherLowerPowerOfTwo
- HighestSetBit
- IndexOfRightMostSetBit
- IsEven
- IsPowerTwo
- LowestSetBit
- NonRepeatingNumberFinder
- NumberAppearingOddTimes
- NumbersDifferentSigns
- OnesComplement
- ParityCheck
- ReverseBits
- SingleBitOperations
- SingleElement
- SwapAdjacentBits
- TwosComplement
- Xs3Conversion
- ciphers
- conversions
- AffineConverter
- AnyBaseToAnyBase
- AnyBaseToDecimal
- AnytoAny
- BinaryToDecimal
- BinaryToHexadecimal
- BinaryToOctal
- DecimalToAnyBase
- DecimalToBinary
- DecimalToHexadecimal
- DecimalToOctal
- EndianConverter
- HexaDecimalToBinary
- HexaDecimalToDecimal
- HexToOct
- IntegerToEnglish
- IntegerToRoman
- IPConverter
- MorseCodeConverter
- OctalToBinary
- OctalToDecimal
- OctalToHexadecimal
- PhoneticAlphabetConverter
- RgbHsvConversion
- RomanToInteger
- TurkishToLatinConversion
- UnitConversions
- UnitsConverter
- datastructures
- bags
- bloomfilter
- buffers
- caches
- crdt
- disjointsetunion
- dynamicarray
- graphs
- hashmap
- heaps
- lists
- CircleLinkedList
- CountSinglyLinkedListRecursion
- CreateAndDetectLoop
- CursorLinkedList
- DoublyLinkedList
- MergeKSortedLinkedList
- MergeSortedArrayList
- MergeSortedSinglyLinkedList
- QuickSortLinkedList
- RandomNode
- ReverseKGroup
- RotateSinglyLinkedLists
- SearchSinglyLinkedListRecursion
- SinglyLinkedList
- SkipList
- SortedLinkedList
- Node
- queues
- stacks
- trees
- AVLSimple
- AVLTree
- BinaryTree
- BoundaryTraversal
- BSTFromSortedArray
- BSTIterative
- BSTRecursive
- BSTRecursiveGeneric
- CeilInBinarySearchTree
- CheckBinaryTreeIsValidBST
- CheckIfBinaryTreeBalanced
- CheckTreeIsSymmetric
- CreateBinaryTreeFromInorderPreorder
- FenwickTree
- GenericTree
- InorderTraversal
- KDTree
- LazySegmentTree
- LCA
- LevelOrderTraversal
- nearestRightKey
- PostOrderTraversal
- PreOrderTraversal
- PrintTopViewofTree
- QuadTree
- RedBlackBST
- SameTreesCheck
- SegmentTree
- SplayTree
- Treap
- TreeRandomNode
- Trie
- VerticalOrderTraversal
- ZigzagTraversal
- devutils
- entities
- nodes
- searches
- divideandconquer
- dynamicprogramming
- BoardPath
- BoundaryFill
- BruteForceKnapsack
- CatalanNumber
- ClimbingStairs
- CoinChange
- CountFriendsPairing
- DiceThrow
- EditDistance
- EggDropping
- Fibonacci
- KadaneAlgorithm
- Knapsack
- KnapsackMemoization
- LevenshteinDistance
- LongestAlternatingSubsequence
- LongestArithmeticSubsequence
- LongestCommonSubsequence
- LongestIncreasingSubsequence
- LongestPalindromicSubsequence
- LongestPalindromicSubstring
- LongestValidParentheses
- MatrixChainMultiplication
- MatrixChainRecursiveTopDownMemoisation
- MaximumSumOfNonAdjacentElements
- MinimumPathSum
- MinimumSumPartition
- NewManShanksPrime
- OptimalJobScheduling
- PalindromicPartitioning
- PartitionProblem
- RegexMatching
- RodCutting
- ShortestCommonSupersequenceLength
- SubsetCount
- SubsetSum
- SubsetSumSpaceOptimized
- SumOfSubset
- Tribonacci
- UniquePaths
- UniqueSubsequencesCount
- WildcardMatching
- WineProblem
- geometry
- greedyalgorithms
- io
- lineclipping
- CohenSutherland
- LiangBarsky
- utils
- maths
- AbsoluteMax
- AbsoluteMin
- AbsoluteValue
- ADTFraction
- AliquotSum
- AmicableNumber
- Area
- Armstrong
- AutoCorrelation
- AutomorphicNumber
- Average
- BinaryPow
- BinomialCoefficient
- Ceil
- CircularConvolutionFFT
- CollatzConjecture
- Combinations
- Convolution
- ConvolutionFFT
- CrossCorrelation
- DeterminantOfMatrix
- DigitalRoot
- DistanceFormula
- DudeneyNumber
- EulerMethod
- EulersFunction
- Factorial
- FactorialRecursion
- FastExponentiation
- FastInverseSqrt
- FFT
- FFTBluestein
- FibonacciJavaStreams
- FibonacciLoop
- FibonacciNumberCheck
- FibonacciNumberGoldenRation
- FindKthNumber
- FindMax
- FindMaxRecursion
- FindMin
- FindMinRecursion
- Floor
- FrizzyNumber
- Gaussian
- GCD
- GCDRecursion
- GenericRoot
- HarshadNumber
- HeronsFormula
- JosephusProblem
- JugglerSequence
- KaprekarNumbers
- KaratsubaMultiplication
- KeithNumber
- KrishnamurthyNumber
- LeastCommonMultiple
- LeonardoNumber
- LinearDiophantineEquationsSolver
- LiouvilleLambdaFunction
- LongDivision
- LucasSeries
- MagicSquare
- MatrixRank
- MatrixUtil
- MaxValue
- Means
- Median
- MillerRabinPrimalityCheck
- MinValue
- MobiusFunction
- Mode
- NonRepeatingElement
- NthUglyNumber
- NumberOfDigits
- PalindromeNumber
- ParseInteger
- PascalTriangle
- PerfectCube
- PerfectNumber
- PerfectSquare
- Perimeter
- PiNilakantha
- PollardRho
- Pow
- PowerOfTwoOrNot
- PowerUsingRecursion
- PrimeCheck
- PrimeFactorization
- PronicNumber
- PythagoreanTriple
- QuadraticEquationSolver
- ReverseNumber
- RomanNumeralUtil
- SecondMinMax
- SieveOfEratosthenes
- SimpsonIntegration
- SolovayStrassenPrimalityTest
- SquareFreeInteger
- SquareRootWithBabylonianMethod
- SquareRootWithNewtonRaphsonMethod
- StandardDeviation
- StandardScore
- StrobogrammaticNumber
- SumOfArithmeticSeries
- SumOfDigits
- SumOfOddNumbers
- SumWithoutArithmeticOperators
- TrinomialTriangle
- TwinPrime
- VampireNumber
- VectorCrossProduct
- Volume
- matrixexponentiation
- misc
- ColorContrastRatio
- InverseOfMatrix
- MapReduce
- MatrixTranspose
- MedianOfMatrix
- MedianOfRunningArray
- MedianOfRunningArrayByte
- MedianOfRunningArrayDouble
- MedianOfRunningArrayFloat
- MedianOfRunningArrayInteger
- MedianOfRunningArrayLong
- MirrorOfMatrix
- PalindromePrime
- PalindromeSinglyLinkedList
- RangeInSortedArray
- Sparsity
- ThreeSumProblem
- TwoSumProblem
- WordBoggle
- others
- ArrayLeftRotation
- ArrayRightRotation
- BankersAlgorithm
- BFPRT
- BoyerMoore
- BrianKernighanAlgorithm
- cn
- Conway
- CRC16
- CRC32
- CRCAlgorithm
- Damm
- Dijkstra
- FibbonaciSeries
- FloydTriangle
- GaussLegendre
- HappyNumbersSeq
- Huffman
- Implementing auto completing features using trie
- InsertDeleteInArray
- KochSnowflake
- Krishnamurthy
- LinearCongruentialGenerator
- LineSweep
- LowestBasePalindrome
- Luhn
- Mandelbrot
- MaximumSumOfDistinctSubarraysWithLengthK
- MemoryManagementAlgorithms
- MiniMaxAlgorithm
- PageRank
- PasswordGen
- PerlinNoise
- PrintAMatrixInSpiralOrder
- QueueUsingTwoStacks
- RemoveDuplicateFromString
- ReverseStackUsingRecursion
- RotateMatrixBy90Degrees
- SkylineProblem
- Sudoku
- TowerOfHanoi
- TwoPointers
- Verhoeff
- Recursion
- scheduling
- searches
- BinarySearch
- BinarySearch2dArray
- BM25InvertedIndex
- BreadthFirstSearch
- DepthFirstSearch
- ExponentalSearch
- FibonacciSearch
- HowManyTimesRotated
- InterpolationSearch
- IterativeBinarySearch
- IterativeTernarySearch
- JumpSearch
- KMPSearch
- LinearSearch
- LinearSearchThread
- LowerBound
- MonteCarloTreeSearch
- OrderAgnosticBinarySearch
- PerfectBinarySearch
- QuickSelect
- RabinKarpAlgorithm
- RandomSearch
- RecursiveBinarySearch
- RowColumnWiseSorted2dArrayBinarySearch
- SaddlebackSearch
- SearchInARowAndColWiseSortedMatrix
- SortOrderAgnosticBinarySearch
- SquareRootBinarySearch
- TernarySearch
- UnionFind
- UpperBound
- sorts
- BeadSort
- BinaryInsertionSort
- BitonicSort
- BogoSort
- BubbleSort
- BubbleSortRecursive
- BucketSort
- CircleSort
- CocktailShakerSort
- CombSort
- CountingSort
- CycleSort
- DualPivotQuickSort
- DutchNationalFlagSort
- ExchangeSort
- FlashSort
- GnomeSort
- HeapSort
- InsertionSort
- IntrospectiveSort
- LinkListSort
- MergeSort
- MergeSortNoExtraSpace
- MergeSortRecursive
- OddEvenSort
- PancakeSort
- PatienceSort
- PigeonholeSort
- QuickSort
- RadixSort
- SelectionSort
- SelectionSortRecursive
- ShellSort
- SimpleSort
- SlowSort
- SortAlgorithm
- SortUtils
- SortUtilsRandomGenerator
- SpreadSort
- StoogeSort
- StrandSort
- SwapSort
- TimSort
- TopologicalSort
- TreeSort
- WaveSort
- WiggleSort
- stacks
- BalancedBrackets
- CelebrityFinder
- DecimalToAnyUsingStack
- DuplicateBrackets
- InfixToPostfix
- InfixToPrefix
- LargestRectangle
- MaximumMinimumWindow
- MinStackUsingSingleStack
- MinStackUsingTwoStacks
- NextGreaterElement
- NextSmallerElement
- PostfixEvaluator
- PostfixToInfix
- PrefixEvaluator
- PrefixToInfix
- SortStack
- StackPostfixNotation
- StackUsingTwoQueues
- strings
- AhoCorasick
- Alphabetical
- Anagrams
- CharactersSame
- CheckAnagrams
- CheckVowels
- CountChar
- CountWords
- HammingDistance
- HorspoolSearch
- Isomorphic
- KMP
- LetterCombinationsOfPhoneNumber
- LongestNonRepetitiveSubstring
- LongestPalindromicSubstring
- Lower
- Manacher
- MyAtoi
- Palindrome
- Pangram
- PermuteString
- RabinKarp
- ReturnSubsequence
- ReverseString
- ReverseStringRecursive
- ReverseWordsInString
- Rotation
- StringCompression
- StringMatchFiniteAutomata
- Upper
- ValidParentheses
- WordLadder
- zigZagPattern
- thealgorithms
- com
- java
- test
- java
- com
- thealgorithms
- audiofilters
- backtracking
- bitmanipulation
- BcdConversionTest
- BinaryPalindromeCheckTest
- BitSwapTest
- BooleanAlgebraGatesTest
- ClearLeftmostSetBitTest
- CountLeadingZerosTest
- CountSetBitsTest
- FindNthBitTest
- GrayCodeConversionTest
- HammingDistanceTest
- HigherLowerPowerOfTwoTest
- HighestSetBitTest
- IndexOfRightMostSetBitTest
- IsEvenTest
- IsPowerTwoTest
- LowestSetBitTest
- NonRepeatingNumberFinderTest
- NumberAppearingOddTimesTest
- NumbersDifferentSignsTest
- OnesComplementTest
- ParityCheckTest
- ReverseBitsTest
- SingleBitOperationsTest
- SingleElementTest
- SwapAdjacentBitsTest
- TwosComplementTest
- Xs3ConversionTest
- ciphers
- conversions
- AffineConverterTest
- AnyBaseToDecimalTest
- BinaryToDecimalTest
- BinaryToHexadecimalTest
- BinaryToOctalTest
- DecimalToAnyBaseTest
- DecimalToBinaryTest
- DecimalToHexadecimalTest
- DecimalToOctalTest
- EndianConverterTest
- HexaDecimalToBinaryTest
- HexaDecimalToDecimalTest
- HexToOctTest
- IntegerToEnglishTest
- IntegerToRomanTest
- IPConverterTest
- MorseCodeConverterTest
- OctalToBinaryTest
- OctalToDecimalTest
- OctalToHexadecimalTest
- PhoneticAlphabetConverterTest
- RomanToIntegerTest
- UnitConversionsTest
- UnitsConverterTest
- datastructures
- bag
- bloomfilter
- buffers
- caches
- crdt
- disjointsetunion
- dynamicarray
- graphs
- hashmap
- heaps
- lists
- queues
- stacks
- trees
- BinaryTreeTest
- BoundaryTraversalTest
- BSTFromSortedArrayTest
- BSTIterativeTest
- BSTRecursiveTest
- CeilInBinarySearchTreeTest
- CheckBinaryTreeIsValidBSTTest
- CheckIfBinaryTreeBalancedTest
- CheckTreeIsSymmetricTest
- CreateBinaryTreeFromInorderPreorderTest
- InorderTraversalTest
- KDTreeTest
- LazySegmentTreeTest
- LevelOrderTraversalTest
- PostOrderTraversalTest
- PreOrderTraversalTest
- QuadTreeTest
- SameTreesCheckTest
- SplayTreeTest
- TreapTest
- TreeTestUtils
- TrieTest
- VerticalOrderTraversalTest
- ZigzagTraversalTest
- divideandconquer
- dynamicprogramming
- BoardPathTest
- BoundaryFillTest
- BruteForceKnapsackTest
- CatalanNumberTest
- ClimbStairsTest
- CoinChangeTest
- CountFriendsPairingTest
- DPTest
- EditDistanceTest
- EggDroppingTest
- FibonacciTest
- KadaneAlgorithmTest
- KnapsackMemoizationTest
- KnapsackTest
- LevenshteinDistanceTests
- LongestAlternatingSubsequenceTest
- LongestArithmeticSubsequenceTest
- LongestCommonSubsequenceTest
- LongestIncreasingSubsequenceTests
- LongestPalindromicSubstringTest
- LongestValidParenthesesTest
- MatrixChainMultiplicationTest
- MatrixChainRecursiveTopDownMemoisationTest
- MaximumSumOfNonAdjacentElementsTest
- MinimumPathSumTest
- MinimumSumPartitionTest
- NewManShanksPrimeTest
- OptimalJobSchedulingTest
- PalindromicPartitioningTest
- PartitionProblemTest
- RegexMatchingTest
- RodCuttingTest
- ShortestCommonSupersequenceLengthTest
- SubsetCountTest
- SubsetSumSpaceOptimizedTest
- SubsetSumTest
- SumOfSubsetTest
- TribonacciTest
- UniquePathsTests
- UniqueSubsequencesCountTest
- WildcardMatchingTest
- WineProblemTest
- geometry
- greedyalgorithms
- io
- lineclipping
- maths
- AbsoluteMaxTest
- AbsoluteMinTest
- AbsoluteValueTest
- ADTFractionTest
- AliquotSumTest
- AmicableNumberTest
- AreaTest
- ArmstrongTest
- AutoCorrelationTest
- AutomorphicNumberTest
- AverageTest
- BinaryPowTest
- BinomialCoefficientTest
- CeilTest
- CollatzConjectureTest
- CombinationsTest
- ConvolutionTest
- CrossCorrelationTest
- DeterminantOfMatrixTest
- DigitalRootTest
- DistanceFormulaTest
- DudeneyNumberTest
- EulersFunctionTest
- FactorialRecursionTest
- FactorialTest
- FastExponentiationTest
- FastInverseSqrtTests
- FFTTest
- FibonacciJavaStreamsTest
- FibonacciLoopTest
- FibonacciNumberCheckTest
- FibonacciNumberGoldenRationTest
- FindKthNumberTest
- FindMaxRecursionTest
- FindMaxTest
- FindMinRecursionTest
- FindMinTest
- FloorTest
- FrizzyNumberTest
- GaussianTest
- GCDRecursionTest
- GCDTest
- GenericRootTest
- HarshadNumberTest
- HeronsFormulaTest
- JosephusProblemTest
- KaprekarNumbersTest
- KaratsubaMultiplicationTest
- LeastCommonMultipleTest
- LeonardoNumberTest
- LiouvilleLambdaFunctionTest
- LongDivisionTest
- LucasSeriesTest
- MatrixRankTest
- MatrixUtilTest
- MaxValueTest
- MeansTest
- MedianTest
- MillerRabinPrimalityCheckTest
- MinValueTest
- MobiusFunctionTest
- ModeTest
- NonRepeatingElementTest
- NthUglyNumberTest
- NumberOfDigitsTest
- PalindromeNumberTest
- ParseIntegerTest
- PascalTriangleTest
- PerfectCubeTest
- PerfectNumberTest
- PerfectSquareTest
- PerimeterTest
- PollardRhoTest
- PowerOfTwoOrNotTest
- PowerUsingRecursionTest
- PowTest
- PrimeCheckTest
- PrimeFactorizationTest
- PronicNumberTest
- PythagoreanTripleTest
- QuadraticEquationSolverTest
- ReverseNumberTest
- SecondMinMaxTest
- SieveOfEratosthenesTest
- SolovayStrassenPrimalityTestTest
- SquareFreeIntegerTest
- SquareRootwithBabylonianMethodTest
- SquareRootWithNewtonRaphsonTestMethod
- StandardDeviationTest
- StandardScoreTest
- StrobogrammaticNumberTest
- SumOfArithmeticSeriesTest
- SumOfDigitsTest
- SumOfOddNumbersTest
- SumWithoutArithmeticOperatorsTest
- TestArmstrong
- TwinPrimeTest
- VolumeTest
- misc
- others
- ArrayLeftRotationTest
- ArrayRightRotationTest
- BestFitCPUTest
- BFPRTTest
- BoyerMooreTest
- cn
- ConwayTest
- CountFriendsPairingTest
- CRC16Test
- CRCAlgorithmTest
- FirstFitCPUTest
- FloydTriangleTest
- KadaneAlogrithmTest
- LineSweepTest
- LinkListSortTest
- LowestBasePalindromeTest
- MaximumSumOfDistinctSubarraysWithLengthKTest
- NewManShanksPrimeTest
- NextFitTest
- PasswordGenTest
- QueueUsingTwoStacksTest
- RemoveDuplicateFromStringTest
- ReverseStackUsingRecursionTest
- SkylineProblemTest
- SudokuTest
- TestPrintMatrixInSpiralOrder
- TowerOfHanoiTest
- TwoPointersTest
- WorstFitCPUTest
- Recursion
- scheduling
- searches
- BinarySearch2dArrayTest
- BinarySearchTest
- BM25InvertedIndexTest
- BreadthFirstSearchTest
- DepthFirstSearchTest
- ExponentialSearchTest
- FibonacciSearchTest
- HowManyTimesRotatedTest
- InterpolationSearchTest
- IterativeBinarySearchTest
- IterativeTernarySearchTest
- JumpSearchTest
- KMPSearchTest
- LinearSearchTest
- LinearSearchThreadTest
- LowerBoundTest
- MonteCarloTreeSearchTest
- OrderAgnosticBinarySearchTest
- PerfectBinarySearchTest
- QuickSelectTest
- RabinKarpAlgorithmTest
- RandomSearchTest
- RecursiveBinarySearchTest
- RowColumnWiseSorted2dArrayBinarySearchTest
- SaddlebackSearchTest
- SearchInARowAndColWiseSortedMatrixTest
- SortOrderAgnosticBinarySearchTest
- SquareRootBinarySearchTest
- TernarySearchTest
- TestSearchInARowAndColWiseSortedMatrix
- UnionFindTest
- UpperBoundTest
- sorts
- BeadSortTest
- BinaryInsertionSortTest
- BitonicSortTest
- BogoSortTest
- BubbleSortRecursiveTest
- BubbleSortTest
- BucketSortTest
- CircleSortTest
- CocktailShakerSortTest
- CombSortTest
- CountingSortTest
- CycleSortTest
- DualPivotQuickSortTest
- DutchNationalFlagSortTest
- ExchangeSortTest
- FlashSortTest
- GnomeSortTest
- HeapSortTest
- InsertionSortTest
- IntrospectiveSortTest
- MergeSortNoExtraSpaceTest
- MergeSortRecursiveTest
- MergeSortTest
- OddEvenSortTest
- PancakeSortTest
- PatienceSortTest
- PigeonholeSortTest
- QuickSortTest
- RadixSortTest
- SelectionSortRecursiveTest
- SelectionSortTest
- ShellSortTest
- SimpleSortTest
- SlowSortTest
- SortingAlgorithmTest
- SortUtilsRandomGeneratorTest
- SortUtilsTest
- SpreadSortTest
- StoogeSortTest
- StrandSortTest
- SwapSortTest
- TimSortTest
- TopologicalSortTest
- TreeSortTest
- WaveSortTest
- WiggleSortTest
- stacks
- BalancedBracketsTest
- CelebrityFinderTest
- DecimalToAnyUsingStackTest
- DuplicateBracketsTest
- InfixToPostfixTest
- InfixToPrefixTest
- LargestRectangleTest
- MinStackUsingSingleStackTest
- MinStackUsingTwoStacksTest
- NextGreaterElementTest
- NextSmallerElementTest
- PostfixEvaluatorTest
- PostfixToInfixTest
- PrefixEvaluatorTest
- PrefixToInfixTest
- SortStackTest
- StackPostfixNotationTest
- StackUsingTwoQueuesTest
- strings
- AhoCorasickTest
- AlphabeticalTest
- AnagramsTest
- CharacterSameTest
- CheckAnagramsTest
- CheckVowelsTest
- CountCharTest
- CountWordsTest
- HammingDistanceTest
- HorspoolSearchTest
- IsomorphicTest
- LetterCombinationsOfPhoneNumberTest
- LongestNonRepetitiveSubstringTest
- LongestPalindromicSubstringTest
- LowerTest
- ManacherTest
- MyAtoiTest
- PalindromeTest
- PangramTest
- PermuteStringTest
- ReturnSubsequenceTest
- ReverseStringRecursiveTest
- ReverseStringTest
- ReverseWordsInStringTest
- RotationTest
- StringCompressionTest
- StringMatchFiniteAutomataTest
- UpperTest
- ValidParenthesesTest
- WordLadderTest
- zigZagPattern
- thealgorithms
- com
- java