Está en la página 1de 2

public static void main(String[] args) {

// TODO code application logic here

//Creamos un arreglo

int tamalitos[] = {20,8,2,9,10,7,5};

//Imprimimos el arreglo original

System.out.print("Vector Original:\n");

imprimirArreglo(tamalitos);

//Ordenamos el arreglo

shell(tamalitos);

System.out.println("El arreglo ordenado es:");

imprimirArreglo(tamalitos);

public static void shell(int arreglo[]){

//Definiremos dos variables, una para identificar los saltos del método

// y otra para ir guardando los valores a intercambiar en la ordenación

int salto, auxiliar;

//Definimos una variable boleana para determinar cuando hay cambios

boolean cambio;

//Definimos un ciclo for para definir los saltos del método

for(salto = arreglo.length / 2; salto != 0; salto = salto / 2){

cambio = true; //Indicamos que habrá cambios

while(cambio){ //Miestras se intercambie algún valor se ejecuta el método de ordenación

//Regresamos el valor de cambio a false para que e evaluen posteriores cambios

cambio = false;

for(int i = salto;i < arreglo.length; i++){ //Recorremos el arreglo

if(arreglo[i-salto]>arreglo[i]){ //Verificamos si hay datos desordenados

//Ordenamos los datos

auxiliar = arreglo[i];
arreglo[i] = arreglo[i-salto];

arreglo[i-salto] = auxiliar;

cambio = true; //Marcamos que hubo cambios

También podría gustarte