Muy buenas, estaba viendo uno de los ejemplos que tengo y no entiendo bien una cosilla en un método de ordenación sucesivo de menores. El ejemplo dice dado un array de 100 elementos ordenar de menor a mayor usando el método de ordenación sucesivo de menores.
Mi pregunta viene en el método de proc_intercambio
<ordenar>
Inicio
Tabla Tb(100)
<cargar_tabla>
<orde_sucesivo_de_menores>
<proc_intercambio>
Fin
<orde_sucesivo_de_menores>
Inicio
Para i desde 1 hasta 99
Min = Tb(i)
pos_ele = i
Para j desde j=i+1 hasta 100
Si min > Tb(j)
entonces
min = Tb(j)
pos_ele = j
Fin_si
Fin_para
<proc_intercambio>
Fin_para
Fin
<proc_intercambio>
Inicio
aux = Tb(i)
Tb(i) = Tb(pos_ele)
Tb(pos_ele) = aux
Fin
En este ultimo método tengo una duda, yo simplemente haría en la 2ª linea en vez de Tb(i) = Tb(pos_ele) pondría sin dudarlo Tb(i) = min pero ahora al ver la solución no entiendo si están las dos formas bien hechas o no.
¿Están bien las dos formas ? ¿ no ? ¿ Que diferencia tiene si esque hace cosas diferentes ?
Por lo que yo entiendo estaría simplemente metiendo en tb(i) el valor min cosa que es lo que quiero ya que se quedo guardado, de la otra forma creo qu elo que hace es lo mismo pero en vez de meter el valor le estoy diciendo una posición del array que contiene justamente el min creo o no...