The Bubble sort is a simple sorting algorithm that continues to swap adjacent values, if they are in the incorrect order, until all the values are sorted.
To sort an array of size n in ascending order, it performs n-1 iterations and in each iteration:
i
with the element at i
+1.i
is greater than the element at i
+1, then the elements are swapped.On average, this algorithm takes time (where n is the size of the array). The algorithm can be optimized to take , if an array is already sorted in the required order, by breaking the outer for-loop if no element is swapped in the inner for-loop.
The following illustration shows the algorithm in action: