En este ejemplo se usa el metodo de ordenamiento de burbuja para ordenar el vector
import java.util.Random;
import java.util.GregorianCalendar;
import java.util.Calendar;
public class Tarea {
public static
void main (String[] args) {
int i, vec[]=new int[500];
System.out.println("
500 NUMEROS AL AZAR CON RANGO DEL 1 AL 100");
for(i=0;i<vec.length;i++) {
vec[i]=(int) (Math.random()*100+ 1);
}
for(i=0;i<vec.length;i++) {
if
(i+1!=vec.length)
System.out.print(vec[i]+", ");
else
System.out.println(vec[i]+".");
}
System.out.println(BurbujaMejorada(vec));
}
public
static String BurbujaMejorada (int[] vec){
String mensaje = "";
Calendar calendario = new
GregorianCalendar();
int temp = 0, cont =0;
//aca comenzamos a comparar y ordenar
cada espacio del vector
for(int i=1;
i<vec.length;i++){
for(int j=0; j<vec.length-1; j++){
if(vec[j] > vec[j+1]){
temp
= vec[j];
vec[j] = vec[j+1];
vec[j+1] = temp;
}
}
}
//comenzamos a concatenar los elementos
ordenados en esta cadena
mensaje = "el arreglo ordenado
es:\n";
do {
mensaje+= "{" + vec[cont] + "}\n";
cont++;
}while(cont< vec.length);
Calendar
calendario2 = new GregorianCalendar();
long
diff = calendario2.getTimeInMillis() - calendario.getTimeInMillis();
Calendar
diferencia = new GregorianCalendar();
diferencia.setTimeInMillis(diff);
System.out.println("\n\nTiempo
de ejecución: " + diferencia.get(Calendar.MINUTE) + "min. " + diferencia.get(Calendar.SECOND)
+ "seg. " + diferencia.get(Calendar.MILLISECOND) +
"milliseg.");
//regresamos el mensaje con todos los
elementos ordenados
return mensaje;
}
}
EJEMPLO DE CORRIDA DEL PROGRAMA
--------------------Configuration:
<Default>--------------------
500 NUMEROS AL AZAR CON RANGO DEL 1 AL 100
91,
89, 95, 79, 36, 4, 75, 73, 92, 93, 35, 95, 82, 67, 1, 88, 33 1, 71, 65, 82, 53,
70, 52, 87, 1, 54, 86, 93, 79, 55, 27, 94, 18, 65, 33, 75, 36, 13, 61, 8, 37,
51, 14, 54, 32, 77, 89, 70, 14.
Tiempo
de ejecución: 0min. 2seg. 10milliseg.
el
arreglo ordenado es:
{1}{1}{1}{4}{8}{13}{14}{14}{18}{27.......ETC.
Process
completed.
DESCARGAR ARCHIVO ABAJO: