Here, We will discuss about Bucket Sort in C, their algorithm, implementation code in C, time and space complexity, and their applications.

**What is Bucket Sort?**

**Bucket Sort** is a comparison sort algorithm. Like *Counting sort*, Bucket Sort also imposes restrictions on the input to improve the performance.

The algorithm based on the idea that dividing elements into different bucket and then sorting these bucket individually. Each bucket is sorted individually using a separate sorting algorithm or applying bucket sort algorithm recursively.

Bucket Sort is useful when input is uniformly distributed over a range

**Bucket Sort Algorithm**

The process of Bucket Sort can be understand as *a scatter-gather approach.*

- Dividing the elements into several groups called
**buckets.** - Elements inside each bucket are sort by using suitable sorting or calling bucket sort algorithm recursively.
- Finally, elements are gathered in order

**Time and Space Complexity of Bucket Sort**

Time Complexity | |

Worst Case | O(n^{2}) |

Best Case | O(n+k) |

Average Case | O(n+k) |

Space Complexity | |

Worst Case | O(n) |

**Applications of Bucket Sort**

Bucket Sort is used when :

- input is uniformly distributed over a range.
- there are floating point values.

### Related:

*Want to Contribute*:-

If you like “**To The Innovation**” and want to contribute, you can mail your articles to **[email protected]**. See your articles on the main page and help other coders.