Upload
magda-fernandez
View
106
Download
0
Embed Size (px)
Citation preview
Ordenar
Por ordenar se entiende el proceso de reorganizar un conjunto de objetos en una cierta secuencia de acuerdo a un criterio especificado.
Ordenamiento de un arreglo
Es posible ordenar utilizando diferentes técnicas . La técnica mas simple es el ordenamiento de burbuja.
El algoritmo de burbuja consiste en evaluar cada elemento por los demás elementos. Para ello, se requiere un índice que recorra el arreglo desde la primera posición hasta la penúltima. Adicionalmente se requiere un índice que recorra el Arreglo desde la siguiente posición del primer índice hasta la última posición del arreglo.
Ordenamiento de Burbuja
Vector unidimensional
A 8 3 5 9 1
0 1 2 3 4Índice
Variable auxiliar
ij
Con base en un arreglo denominado A de 5 posiciones y los datos en cada posición son 8,3,5,9,1. Ordenar los números de menor a mayor utilizando el método burbuja.
Sintaxis Método burbujafor(i = 0; i < 4; i++){ for(j= i + 1; j< 5; j ++ ) { if (A[i] > A[j]){ auxiliar = A[i]; A[i]= A[j]; A[j] = auxiliar; } }}
Iteración 0Vector unidimensional
A 8 3 5 9 1
0 1 2 3 4Índice
Variable auxiliar
ij
8 > 3Verdadero entonces
Se cambian los valores dentro del vector
si A[i] > A[j]
i j A[i] A[j]Prueba de Escritorio
0 1 8 3auxiliar
0 1 3 8 8
Vector unidimensional
A 3 8 5 9 1
0 1 2 3 4Índice
Variable
8
auxiliar
Iteración 1Vector unidimensional
A 3 8 5 9 1
0 1 2 3 4Índice
Variable auxiliar
ij
3 > 5Falso entonces
Los datos siguen quedando en su
posición
si A[i] > A[j]
i j A[i] A[j]Prueba de Escritorio
0 2 3 5auxiliar
Iteración 2Vector unidimensional
A 3 8 5 9 1
0 1 2 3 4Índice
Variable auxiliar
ij
3 > 9Falso entonces
Los datos siguen quedando en su
posición
si A[i] > A[j]
i j A[i] A[j]Prueba de Escritorio
0 3 3 9auxiliar
Iteración 3Vector unidimensional
A 3 8 5 9 1
0 1 2 3 4Índice
Variable
3
auxiliar
ij
3 > 1Verdadero entonces
Se cambian los valores dentro del vector
si A[i] > A[j]i j A[i] A[j]
Prueba de Escritorio
0 4 3 1auxiliar
0 4 1 3 3
Vector unidimensional
A 1 8 5 9 3
0 1 2 3 4Índice
Variable
3
auxiliar
Iteración 4Vector unidimensional
A 1 8 5 9 3
0 1 2 3 4Índice
Variable
8
auxiliar
ij
8 > 5Verdadero entonces
Se cambian los valores dentro del vector
si A[i] > A[j]i j A[i] A[j]
Prueba de Escritorio
1 2 8 5auxiliar
1 2 5 8 8
Vector unidimensional
A 1 5 8 9 3
0 1 2 3 4Índice
Variable
8
auxiliar
Iteración 5Vector unidimensional
A 1 5 8 9 3
0 1 2 3 4Índice
Variable auxiliar
ij
5 > 9Falso entonces
Los datos siguen quedando en su
posición
si A[i] > A[j]
i j A[i] A[j]Prueba de Escritorio
1 3 5 9auxiliar
Iteración 6Vector unidimensional
A 1 5 8 9 3
0 1 2 3 4Índice
Variable
5
auxiliar
ij
5 > 3Verdadero entonces
Se cambian los valores dentro del vector
si A[i] > A[j]i j A[i] A[j]
Prueba de Escritorio
1 4 5 3auxiliar
1 4 3 5 5
Vector unidimensional
A 1 3 8 9 5
0 1 2 3 4Índice
Variable
5
auxiliar
Iteración 7Vector unidimensional
A 1 3 8 9 5
0 1 2 3 4Índice
Variable auxiliar
ij
3 > 5Falso entonces
Los datos siguen quedando en su
posición
si A[i] > A[j]
i j A[i] A[j]Prueba de Escritorio
1 4 3 5auxiliar
Iteración 8Vector unidimensional
A 1 3 8 9 5
0 1 2 3 4Índice
Variable auxiliar
ij
3 > 5Falso entonces
Los datos siguen quedando en su
posición
si A[i] > A[j]
i j A[i] A[j]Prueba de Escritorio
2 3 8 9auxiliar
Iteración 9Vector unidimensional
A 1 3 8 9 5
0 1 2 3 4Índice
Variable
8
auxiliar
ij
8 > 5Verdadero entonces
Se cambian los valores dentro del vector
si A[i] > A[j]i j A[i] A[j]
Prueba de Escritorio
2 4 8 5auxiliar
2 4 5 8 8
Vector unidimensional
A 1 3 5 9 8
0 1 2 3 4Índice
Variable
8
auxiliar
Iteración 10Vector unidimensional
A 1 3 5 9 8
0 1 2 3 4Índice
Variable
9
auxiliar
ij
9 > 8Verdadero entonces
Se cambian los valores dentro del vector
si A[i] > A[j]i j A[i] A[j]
Prueba de Escritorio
3 4 9 8auxiliar
3 4 8 9 9
Vector unidimensional
A 1 3 5 8 9
0 1 2 3 4Índice
Variable
9
auxiliar