Pigeonhole sort is an algorithm that works on integer numbers and is best suited when all the keys are unique.
The steps for performing Pigeonhole Sort involve creating a separate array of pigeonholes, placing the elements from the original array into the pigeonhole array based on their value, and finally copying the elements back to the original array.
An example is provided to explain the process, and the implementation of Pigeonhole Sort in C is also shared.
The time complexity of Pigeonhole Sort is n + 2^k in the worst case scenario.