Título: Algoritmo, WTF! Publicado por: Shell Root en 24 Mayo 2011, 16:15 pm En clase de programación, nos explicaron algunos métodos para ordenar elementos y uno de estos fue el siguiente: -No lo terminamos porque no sabíamos como realmente era-
Suponiendo que tengo el siguiente vector: 1,3,5,10,20 y quiero ingresar el número 22. Además de que las variables: TV = TotalValores, que en este casi son 5. A = vector VALIN = Valor a ingresar No logro entender como hacerlo,... Código
Título: Re: Algoritmo de ordenamiento, WTF! Publicado por: pucheto en 24 Mayo 2011, 16:27 pm No es un algoritmo de ordenamiento...
Es un algoritmo para insertar ordenado en un vector. *Busca la posicion donde va a meter a 'VALIN' (justo detras del primer elemento mayor q VALIN, los anteriores son menores q VALIN). *Agranda el vector en 1. *Corre todos los elementos mayores que VALIN 1 posicion hacia adelante. *Inserta VALIN en la posicion que le corresponde. Título: Algoritmo, WTF! Publicado por: Shell Root en 24 Mayo 2011, 17:07 pm Tienes razón XD
Pero, a ver... Hago hasta donde terminar el primer MIENTRAS, incremento la variable TV y ya me pierdo... Título: Re: Algoritmo, WTF! Publicado por: raul338 en 24 Mayo 2011, 20:29 pm busca sobre insertion sort. Lo que hace es a una matriz ordenada, buscar su lugar, hacerle un "espacio" moviendo todos los elementos restantes....
Y poniendo el elem en su lugar Título: Re: Algoritmo, WTF! Publicado por: Shell Root en 24 Mayo 2011, 23:59 pm Sí eso lo sé, tampoco soy tan principiante.
Pero mi duda es, si el elemento que ingreso DEBE ser el último, porque mueve los otros elementos? Título: Re: Algoritmo, WTF! Publicado por: raul338 en 25 Mayo 2011, 00:22 am Si es el ultimo, tecnicamente L deberia ser mayor a TV y ni entraria al bucle, simplemente lo agregaria :)
Título: Re: Algoritmo, WTF! Publicado por: Shell Root en 25 Mayo 2011, 05:38 am Pero a ver, supongamos que tenemos este vector
Código
Ahora antes del primer ciclo, las variables quedan así, Código
Cuando se entra en el ciclo, finalmente quedan así, Código
Hasta aquí, vamos bien, ahora incrementó la variable TV en 1, Código
Aquí es donde me pierdo, entra el ciclo con las siguientes valores, Código
Se supone que debe de ingresar al vector, y decrementar 7 a 6, aquí es donde pararía? Título: Re: Algoritmo, WTF! Publicado por: dakomt en 27 Mayo 2011, 01:17 am Aquí es donde me pierdo, entra el ciclo con las siguientes valores, Código
Se supone que debe de ingresar al vector, y decrementar 7 a 6, aquí es donde pararía? No exactamente. en ese bucle l+1 es una constante, no se decrementará nunca. El valor que se va decrementando es K. Es decir Ahora K vale 6... lo vamos decrementando hasta que K = l +1, es decir, mientras K >= l +1. Pero como K < l +1 la condición no se cumple y ese bucle no llega a ejecutar ninguna iteración. |