Algorithm Code
Time: O(n²) | Space: O(1)
1void bubbleSort(int arr[]) {
2 int n = arr.length;
3 for (int i = 0; i < n - 1; i++) {
4 for (int j = 0; j < n - i - 1; j++) {
5 if (arr[j] > arr[j + 1]) {
6 // Swap arr[j] and arr[j+1]
7 int temp = arr[j];
8 arr[j] = arr[j + 1];
9 arr[j + 1] = temp;
10 }
11 }
12 }
13}Algorithm Steps
Step 1 of 51
Initial Array
The unsorted array.
Comparing
Comparing indices 0 and 1.
Swapping
Swapping 64 and 34.
Swapped
Swapped 64 and 34.
Comparing
Comparing indices 1 and 2.
Swapping
Swapping 64 and 25.
Swapped
Swapped 64 and 25.
Comparing
Comparing indices 2 and 3.
Swapping
Swapping 64 and 12.
Swapped
Swapped 64 and 12.
Comparing
Comparing indices 3 and 4.
Swapping
Swapping 64 and 22.
Swapped
Swapped 64 and 22.
Comparing
Comparing indices 4 and 5.
Swapping
Swapping 64 and 11.
Swapped
Swapped 64 and 11.
Comparing
Comparing indices 5 and 6.
Comparing
Comparing indices 0 and 1.
Swapping
Swapping 34 and 25.
Swapped
Swapped 34 and 25.
Comparing
Comparing indices 1 and 2.
Swapping
Swapping 34 and 12.
Swapped
Swapped 34 and 12.
Comparing
Comparing indices 2 and 3.
Swapping
Swapping 34 and 22.
Swapped
Swapped 34 and 22.
Comparing
Comparing indices 3 and 4.
Swapping
Swapping 34 and 11.
Swapped
Swapped 34 and 11.
Comparing
Comparing indices 4 and 5.
Comparing
Comparing indices 0 and 1.
Swapping
Swapping 25 and 12.
Swapped
Swapped 25 and 12.
Comparing
Comparing indices 1 and 2.
Swapping
Swapping 25 and 22.
Swapped
Swapped 25 and 22.
Comparing
Comparing indices 2 and 3.
Swapping
Swapping 25 and 11.
Swapped
Swapped 25 and 11.
Comparing
Comparing indices 3 and 4.
Comparing
Comparing indices 0 and 1.
Comparing
Comparing indices 1 and 2.
Swapping
Swapping 22 and 11.
Swapped
Swapped 22 and 11.
Comparing
Comparing indices 2 and 3.
Comparing
Comparing indices 0 and 1.
Swapping
Swapping 12 and 11.
Swapped
Swapped 12 and 11.
Comparing
Comparing indices 1 and 2.
Comparing
Comparing indices 0 and 1.
Sorted!
The array is fully sorted.