Programming Tutorials

Bubble Sort in Java

By: SPlutard in Java Tutorials on 2011-01-29  

The Bubble Sort method works like this: In a series of n-1 iterations, the successive elements, list[index] and list[index + 1] of list are compared. If list[index] is greater than list[index + 1], then the elements of list[index] and list[index + 1] are swapped.

This process is repeated through the list until no swaps are necessary. On average, for a list with length 'n', the Bubble Sort method takes:

 *          key comparisons:    (n*(n-1))/2              
 *          item assignments:   (n*(n-1))/4              
 
public class TestBubbleSort {
    public static void main(String[] args) {
        int unsortedArray[] = {10, 97, 6, 23, 0, -45, 697, -1000, 1, 0}; //Random set of numbers for example.
        int i;
        
        bubbleSort(unsortedArray, unsortedArray.length); //Pass the array to be sorted and its length.
        
        System.out.println("After sorting, the list elements are: "); //Just to show you it worked. :)
        
        for(i=0; i<unsortedArray.length; i++) {
            System.out.print(unsortedArray[i] + " ");
        }
    }

    private static void bubbleSort(int[] unsortedArray, int length) {
        int temp, counter, index;
        
        for(counter=0; counter<length-1; counter++) { //Loop once for each element in the array.
            for(index=0; index<length-1-counter; index++) { //Once for each element, minus the counter.
                if(unsortedArray[index] > unsortedArray[index+1]) { //Test if need a swap or not.
                    temp = unsortedArray[index]; //These three lines just swap the two elements:
                    unsortedArray[index] = unsortedArray[index+1];
                    unsortedArray[index+1] = temp;
                }
            }
        }
    }
}





Add Comment

* Required information
1000

Comments

No comments yet. Be the first!

Most Viewed Articles (in Java )

Latest Articles (in Java)