Catalan numbers algorithm is Dynamic Programming algorithm.
In combinatorial mathematics, the Catalan numbers form a sequence of natural numbers that occur in various counting problems, often involving recursively-defined objects. The Catalan numbers on nonnegative integers n are a set of numbers that arise in tree enumeration problems of the type, 'In how many ways can a regular n-gon be divided into n-2 triangles if different orientations are counted separately?'
Application of Catalan Number Algorithm:
Using zero-based numbering, the nth Catalan number is given directly in terms of binomial coefficients by the following equation.
Example of Catalan Number:
Here value of n = 4.(Best Example - From Wikipedia)
Auxiliary Space: O(n)
Time Complexity: O(n^2)