1 / 7

Método de ordenación por inserción

Método de ordenación por inserción. Mayra Veronica Sierra Torres 730015 Guillermo Escamilla Navarro 730077.

javen
Download Presentation

Método de ordenación por inserción

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Método de ordenación por inserción Mayra Veronica Sierra Torres 730015 Guillermo Escamilla Navarro 730077

  2. El método de inserción es el que generalmente utilizan los jugadores de cartas cuando ordenan éstas, de ahí que también se conozca con el nombre de método de la baraja.La idea central de este algoritmo consiste en insertar un elemento del arreglo en la parte izquierda del mismo, que ya se encuentra ordenada. Este proceso se repite desde el segundo hasta el n-esimo elemento. 

  3. Este método toma cada elemento del arreglo para ser ordenado y lo compara con los que se encuentran en posiciones anteriores a la de él dentro del arreglo. Si resulta que el elemento con el que se está comparando es mayor que el elemento a ordenar, se recorre hacia la siguiente posición superior.

  4. Si por el contrario, resulta que el elemento con el que se está comparando es menor que el elemento a ordenar, se detiene el proceso de comparación pues se encontró que el elemento ya está ordenado y se coloca en su posición (que es la siguiente a la del último número con el que se comparó).

  5. Ejemplo: Se desean ordenarse las siguientes clave del arreglo A: 15, 67, 08, 16, 44, 27, 12, 35 Primera pasada A[2] < A[1] 67 < 15 No hay intercambio A: 15, 67, 08, 16, 44, 27, 12, 35 Segunda pasada A[3] < A[2] 08 < 67 Si hay intercambio A[2] < A[1] 08 < 15 Si hay A: 15, 08, 67, 16, 44, 27, 12, 35 Tercera pasada A[4] < A[3] 08 < 15 Si hay intercambio A[3] < A[2] 08 < 15 Si hay intercambio A= 08, 15, 67, 16, 44, 27, 12, 35 Hasta la séptima pasada el arreglo queda ordenado: 08, 12, 15, 16, 27, 35, 44, 67

  6. A continuación se muestra el Ordenamiento por inserción en distintos lenguajes de programación: C void insertionSort(int numbers[], int array_size) { int i, j, index; for (i=1; i < array_size; i++) { index = numbers[i]; j = i-1; while (j >= 0 && numbers[j] > index) { numbers[j + 1] = numbers[j]; j--; } numbers[j+1] = index; }}

  7. C++ template <class T> void insertionSort(std::vector<T>& v, int fin) { int i, j, index; for (i=1; i <fin; i++) { index = v.at(i); j = i-1; while (j >= 0 && v.at(j)>index) { v.at(j+1)=v.at(j); j--; } v.erase(v.begin()+j+1); v.insert(v.begin()+j+1,index); }}

More Related