package sorting;

import java.util.Random;

public class BubbleSort {
	
	public static <AnyType extends Comparable<? super AnyType>> void bubbleSort(AnyType[] a) {
		int i = 0;
		while (true) {
			boolean flipPerformed = false;
			for (int j=0; j < a.length - (1+i); j++) {
				if (a[j+1].compareTo(a[j]) < 0) { 
					flipPerformed = true;
					AnyType tmp = a[j];  
					a[j] = a[j+1];
			        a[j+1] = tmp;
				}
			}
			i++;
			if (!flipPerformed) break;
		}	
	}
	
}
