/* File: ordbubot.c */ /* Time-stamp: "2001-05-25 16:08:01 calvanes" */ /* Scopo: funzioni sui vettori */ void BubbleSortOttimizzato(TipoVettore A, int n) /* Ordina i primi n elementi del vettore A usando l'algoritmo di ordinamento a bolle nella versione ottimizzata. */ { int i = 0; int j; TipoElemVettore temp; bool ordinato; do { /* inizia fase i */ ordinato = TRUE; for (j = n-1; j > i; j--) if (A[j] < A[j-1]) { /* scambia A[j] e A[j-1] */ temp = A[j]; A[j] = A[j-1]; A[j-1] = temp; ordinato = FALSE; } i++; } while (!ordinato && i < n-1); } /* BubbleSortOttimizzato */