Autor
|
Tema: Método seleccion en C++, error. (Leído 1,963 veces)
|
Abril7
Desconectado
Mensajes: 22
|
Hola, hicé un código para ordenar por método de selección una lista doblemente enlanzada, segun yo funcionaba y todo bien, pero cuando lo revisé con mas de 10 elementos ya no funciona, solo con pocos. Si por favor alguien nota que hago mal, agradecería mucho que me lo dijera, muchas gracias de antemano. void doubleList::orderSelection() { int min, aux; if (first->next==NULL) return; else{ Node *p = first; while(p != NULL){ min = p->element; Node *j = p ->next; while(j != NULL){ if(j->element < min){ aux = min; min = j->element; j->element = aux; p->element = min; j= p->next; break; } j=j->next; } aux = p->element; min = aux; p = p->next; } } }
|
|
|
En línea
|
|
|
|
CalgaryCorpus
|
Serviria si indentaras mejor el codigo, para leerlo mejor y si presentaras como estas probando el mismo. Tal vez el problema esta en la prueba y no en el codigo que muestras.
|
|
|
En línea
|
|
|
|
Abril7
Desconectado
Mensajes: 22
|
Una disculpa, mira las pruebas:
Tengo una función rand para añadir los datos por cantidades, le pusé para añadir 7 datos que fueron: 478,224,169,0,334,467,41. Luego los "ordené" y quedaron así: 224,169,0,334,467,41,478.
Ahora un ejemplo que si funciona, hicé lo mismo pero ahora con 5 elementos, se añadieron: 41,467,334,0,169, estos si los ordenó correctamente.
|
|
|
En línea
|
|
|
|
MAFUS
Desconectado
Mensajes: 1.603
|
El algoritmo debería buscar el mínimo valor de la lista entera y cambiarlo por el del puntero principal pero tu código busca el primer elemento menor al del puntero principal, intercambiarlo (o eso creo que hace) y saltar a la próxima del puntero principal.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Problema con funcion, Metodo de seleccion
Programación C/C++
|
krowa
|
7
|
4,509
|
24 Octubre 2011, 19:54 pm
por krowa
|
|
|
Error en llamada a metodo
Java
|
m@o_614
|
4
|
3,237
|
14 Mayo 2012, 01:03 am
por [Case]
|
|
|
Error metodo main
Java
|
SeñorX95
|
7
|
2,947
|
13 Marzo 2015, 21:20 pm
por SeñorX95
|
|
|
Error al retorno de un metodo
Java
|
n-utz
|
0
|
1,412
|
25 Marzo 2017, 19:37 pm
por n-utz
|
|
|
Lista doblemente enlazada ordenada por método de selección
Programación C/C++
|
Abril7
|
0
|
4,859
|
6 Abril 2017, 05:54 am
por Abril7
|
|