What is the time complexity of sorting algorithms?
Common sorting algorithms like QuickSort and MergeSort have a time complexity of O(n log n), while simpler ones like BubbleSort are O(n^2).
Sorting algorithms have different time complexities based on their approach. Algorithms like QuickSort and MergeSort, which use a divide-and-conquer strategy, have an average-case time complexity of O(n log n), making them very efficient for large datasets. MergeSort is stable, meaning it maintains the order of equal elements, while QuickSort is typically faster but can degrade to O(n^2) in its worst case (though this is rare with optimizations like randomized pivots). Simpler algorithms like BubbleSort, SelectionSort, and InsertionSort have a time complexity of O(n^2) and are generally too slow for large datasets. Understanding when to use a sorting algorithm is key to solving many problems efficiently.