metodo de inserciÓn en java.docx

2

Click here to load reader

Upload: omar-andres

Post on 27-Oct-2015

22 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: METODO DE INSERCIÓN EN JAVA.docx

METODO DE INSERCIÓN EN JAVA

El ordenamiento por inserción (insertion sort en inglés) es una manera muy natural de ordenar para un ser humano, y

puede usarse fácilmente para ordenar un mazo de cartas numeradas en forma arbitraria. Requiere O(n²) operaciones

para ordenar una lista de n elementos.

Inicialmente se tiene un solo elemento, que obviamente es un conjunto ordenado. Después, cuando hay k elementos

ordenados de menor a mayor, se toma el elemento k+1 y se compara con todos los elementos ya ordenados,

deteniéndose cuando se encuentra un elemento menor (todos los elementos mayores han sido desplazados una

posición a la derecha) o cuando ya no se encuentran elementos (todos los elementos fueron desplazados y este es el

más pequeño). En este punto se inserta el elemento k+1debiendo desplazarse los demás elementos.

public static void main(String[] args) { Scanner lectura = new Scanner(System.in); int[] Arreglo; int longitud, key, i; System.out.println("\t\t INSERCION : "); // longitud del arreglo System.out.print("Ingrese la Cantidad Numeros a Ordenar: "); longitud = lectura.nextInt(); // Creando un arreglo Arreglo = new int[longitud]; // Leer todos los numero a ordenar System.out.println("Ingresar " + longitud + " - Numeros : "); for(int n=0; n<longitud ; n++){ Arreglo[n] = lectura.nextInt(); } // Ordenar los Numeros utilizando el metodo Burbuja for(int j=1 ; j<longitud ; j++){ key = Arreglo[j]; i = j-1; //Inserta A[j] en la ya ordenada while(i >= 0 && Arreglo[i]>key){ Arreglo[i+1]= Arreglo[i]; i--; } Arreglo[i+1] = key; } // Mostra el arreglo ordenado for(int n=0; n<longitud ; n++) System.out.print(Arreglo[n]+" "); }void insertionSort(int arr[], int length) {int i, j, tmp;for (i = 1; i < length; i++) {j = i;while (j > 0 && arr[j - 1] > arr[j]) {tmp = arr[j];arr[j] = arr[j - 1];arr[j - 1] = tmp;j--;}}}