/**
 *  Ordinamento di array tramite SelectionSort
 *
 * @author     Antonio Terreno
 * @created    22 maggio 2002
 */
public class SortArray {

        /**
         *  Selection Sort generico
         *
         * @param  a  Array generico di oggetti di tipo Comparabile
         * @param  n  Indice ultimo elemento dell'array
         */

        public static void sort(Comparabile a[], int n) {
                int i;
                int j;
                int piccolo;
                Comparabile temp;

                for (i = 0; i < n; i++) {
                        piccolo = i;
                        for (j = i + 1; j <= n; j++) {
                                if (a[j].compara(a[piccolo]) == -1) {
                                        piccolo = j;
                                }
                        }
                        temp = a[piccolo];
                        a[piccolo] = a[i];
                        a[i] = temp;
                }
        }
}