Dev - C++ - NECESITO AYUDAAAA

 
Vista:
sin imagen de perfil

NECESITO AYUDAAAA

Publicado por Francisco Keplat (2 intervenciones) el 25/09/2021 03:14:15
Hola, gente programadora, voy empezando y necesito ayuda en c++
me dejaron este ejercicio y la verdad no se como responderlo, llevo poco tiempo en c++
"implementar la lista ligada (doble) desde cero e implementar sobre esta el algoritmo Mergesort de manera que mantenga su complejidad, El código final debe poder leer un archivo de entrada, cargar los datos a la lista y después ordenarlos usando Mergesort, para finalmente escribirlos a un archivo de salida."
si alguien me puede ayudar, estaría bastante agradecido, gracias!

No he encontrado (aun) algún video/tutorial que me ayude a implementar mergesort en la lista doble.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

NECESITO AYUDAAAA

Publicado por anonymous (146 intervenciones) el 25/09/2021 03:44:37
Hola, a ver tu problema es implementar la lista doblemente enlazada? O es implementar la función mergesort? O todas las anteriores? Para entender mejor. Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

NECESITO AYUDAAAA

Publicado por Francisco (2 intervenciones) el 25/09/2021 04:10:17
sobre la lista doblemente enlazada implementar el mergesort bro, antes que nada, gracias por responder
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

NECESITO AYUDAAAA

Publicado por anonymous (146 intervenciones) el 25/09/2021 04:24:49
Dime exactamente que operaciones debe llevar la lista doblemente enlazada?

Definición:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
template<typename T>struct lista
{
    struct nodo
    {
        T valor;
 
        nodo *ant, *sig;
    };
 
    nodo *primero, *ultimo;
};
 
template<typename T> void __push(lista<T>::nodo*, lista<T>::nodo, T);
template<typename T> T __pop(lista<T>::nodo*, lista<T>::nodo*);
 
template<typename T> void push(lista<T>* lis, T val)
{
     __push(lis->primero, lis->ultimo, val);
}
 
template<typename T> T pop(lista<T>* lis)
{
    return __pop(lis->primero, lis->ultimo);
}

No se como implementar la función mergesort, pero hay mucha información en internet.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar