Cita:
Iniciado por CalgaryCorpus
Puesto que comparar a[i] y a[j] es lo mismo que comparar a[j] con a[i], en el fondo hay que considerar que se está comparando todo 2 veces.
Una posible optimización, para evitar comparaciones superfluas es comenzar el segundo indice desde 1 mas que el indice primario.
Algo como ..
Código pseudo:
Ver originalfor( i = 0; i < size; ++i ) {
for( j = i+1; j < size; ++j ) {
// comparar a[i] y a[j].
// i y j nunca son iguales, no es necesario chequearlo
}
}
Hola, esto se usa para organizar un array, se llama método de la burbuja. Pero no es lo que necesita, pues necesita encontrar la posición. Mira imagínate que hay dos arrary a y b. Y que a[3] == b[1], en este caso lo que propones no podría detectar que en el elemento de a en la posición 3 es igual que el elemento 1 de b.
Saludos.