Bubble sort is a simple sorting algorithm that compares adjacent elements and swaps them if they are in the wrong order. It works by repeatedly stepping through the list to be sorted, comparing adjacent items and swapping them if they are in the wrong order. This bubbles the largest values to the end of the list. The time complexity of bubble sort is O(n2) in all cases making it inefficient for large lists.
Download as DOCX, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
121 views
Bubble Sort Algorithm
Bubble sort is a simple sorting algorithm that compares adjacent elements and swaps them if they are in the wrong order. It works by repeatedly stepping through the list to be sorted, comparing adjacent items and swapping them if they are in the wrong order. This bubbles the largest values to the end of the list. The time complexity of bubble sort is O(n2) in all cases making it inefficient for large lists.
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5
Bubble Sort Algorithm
Bubble Sort is a simple algorithm which is used to sort a given
set of n elements provided in form of an array with n number of elements. Bubble Sort compares all the element one by one and sort them based on their values. If the given array has to be sorted in ascending order, then bubble sort will start by comparing the first element of the array with the second element, if the first element is greater than the second element, it will swap both the elements, and then move on to compare the second and the third element, and so on. If we have total n elements, then we need to repeat this process for n-1 times. It is known as bubble sort, because with every complete iteration the largest element in the given array, bubbles up towards the last place or the highest index, just like a water bubble rises up to the water surface. Sorting takes place by stepping through all the elements one-by- one and comparing it with the adjacent element and swapping them if required.
Implementing Bubble Sort Algorithm
Following are the steps involved in bubble sort(for sorting a given array in ascending order):
1. Starting with the first element(index = 0), compare the
current element with the next element of the array. 2. If the current element is greater than the next element of the array, swap them. 3. If the current element is less than the next element, move to the next element. Repeat Step 1.
Let's consider an array with values {5, 1, 6, 2, 4, 3}
Below, we have a pictorial representation of how bubble sort will sort the given array. Link : Code for Bubble sort
Complexity Analysis of Bubble Sort
In Bubble Sort, n-1 comparisons will be done in the 1st pass, n-2 in 2nd pass, n-3 in 3rd pass and so on. So the total number of comparisons will be,
(n-1) + (n-2) + (n-3) + ..... + 3 + 2 + 1
Sum = n(n-1)/2 i.e O(n2)
Hence the time complexity of Bubble Sort is O(n2).
The main advantage of Bubble Sort is the simplicity of the algorithm. The space complexity for Bubble Sort is O(1), because only a single additional memory space is required i.e. for temp variable. Also, the best case time complexity will be O(n), it is when the list is already sorted. Following are the Time and Space complexity for the Bubble Sort algorithm.
Worst Case Time Complexity [ Big-O ]: O(n2)
Best Case Time Complexity [Big-omega]: O(n) Average Time Complexity [Big-theta]: O(n2) Space Complexity: O(1) Modified Bubble Sort Algorithm
To optimize our bubble sort algorithm, we can introduce a flag to
monitor whether elements are getting swapped inside the inner for loop. Hence, in the inner for loop, we check whether swapping of elements is taking place or not, everytime. If for a particular iteration, no swapping took place, it means the array has been sorted and we can jump out of the for loop, instead of executing all the iterations. Let's consider an array with values {11, 17, 18, 26, 23} Below, we have a pictorial representation of how the optimized bubble sort will sort the given array. Link : Code for Modified Bubble sort (Scroll down you’ll find the optimized way)
Comparison Between Bubble, Insertion and Selection sort :
Robert Taft - Mass Without the Consecration? The Historic Agreement on the Eucharist Between the Catholic Church and the Assyrian Church of the East Promulgated 26 October 2001 ////Centro Pro Unione N. 63 - Spring 2003
Robert Taft - Mass Without the Consecration? The Historic Agreement on the Eucharist Between the Catholic Church and the Assyrian Church of the East Promulgated 26 October 2001 ////Centro Pro Unione N. 63 - Spring 2003