Quick sort is a popular sorting algorithm that has an average case time complexity of O(n log n) and is often used as a faster alternative to other sorting algorithms such as bubble sort or insertion sort. It works by selecting a pivot element from the array and partitioning the other elements into two sub-arrays,