Seguimos buscando a Arshak. Ayudanos compartiendo!
Encuesta no oficial de docentes
Resultados de la encuesta no oficial de docentes
Probaste el SIGA Helper?

Donar $100 Donar $200 Donar $500 Donar mensualmente


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
TP N° 8 - Ejercicio 17 - Quien me ayuda?
Autor Mensaje
Gonsha Sin conexión
Presidente del CEIT
Wub Wub Nation
********

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 1.491
Agradecimientos dados: 166
Agradecimientos: 696 en 50 posts
Registro en: Mar 2012
Mensaje: #1
TP N° 8 - Ejercicio 17 - Quien me ayuda? Dudas y recomendaciones Informática I (Electrónica)
Hola gente como andan?

Bueno quien me puede tirar el código del ejercicio 17 del tp 8, que no me sale. Nunca llegamos a ver listas doblemente enlazadas, y bueno es una cagada. Este dice:

"Implemente una función s_count que devuelva la cantidad de nodos existentes en una lista simplemente enlazada. Realice la misma función d_count para una lista doblemente enlazada. Reutilice tódo el código que pueda."

Eso es todo! Desde ya muchas gracias!

[Imagen: tumblr_mram6vK6161rxdmpio1_400.gif]
14-02-2014 11:23
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Dios Sin conexión
Presidente del CEIT
.
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.057
Agradecimientos dados: 32
Agradecimientos: 160 en 132 posts
Registro en: Dec 2011
Mensaje: #2
RE: TP N° 8 - Ejercicio 17 - Quien me ayuda?
Y pero para contar los nodos es lo mismo una lista simplemente enlazada que una doble. En la doble tenés un puntero al nodo siguiente y otro al anterior. A efectos prácticos, cualquier función que hagas para contar una lista simplemente enlazada te va a servir para una doblemente enlazada.

«(…)Se arman paquetes… ¿eh?… tecnológicos… tecnológicos portes de… en donde están… este… interrelacionados con las otras capas.(…)»
(Este mensaje fue modificado por última vez en: 29-05-2014 01:48 por Dios.)
14-02-2014 11:36
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Dios recibio 1 Gracias por este post
Gonsha (20-02-2014)
leibniz Sin conexión
Secretario General

*******

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 849
Agradecimientos dados: 46
Agradecimientos: 24 en 17 posts
Registro en: Dec 2012
Mensaje: #3
RE: TP N° 8 - Ejercicio 17 - Quien me ayuda?
(14-02-2014 11:36)Dios escribió:  Y pero para contar los nodos es lo mismo una lista simplemente enlazada que una doble. En la doble tenés un puntero al nodo siguiente y otra al anterior. A efectos prácticos, cualquier función que hagas para contar una lista simplemente enlazada te va a servir para una doblemente enlazada.

Claro, lo único que tenés que asegurarte es de que los nodos de las listas tengan el mismo campo *siguiente o como quieras llamarlo.

Te dan el prototipo de la función que piden? No es difícil, es un bucle con una condición. No hay mucha tela que cortar...

[Imagen: Leibnitz_signature.svg]
16-02-2014 10:33
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] leibniz recibio 1 Gracias por este post
Gonsha (20-02-2014)
Santi Aguito Sin conexión
Presidente del CEIT
Newtoniano
********

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 1.240
Agradecimientos dados: 246
Agradecimientos: 682 en 341 posts
Registro en: Oct 2012
Mensaje: #4
RE: TP N° 8 - Ejercicio 17 - Quien me ayuda?
Bueno...suponete que los nodos que conforman tu lista son del tipo struct nodo, y que en tu main tenes definida una variable llamad struct nodo *inicio el cual no es mas que un puntero al inicio de tu lista. Llamamos a la función s_count pasandole como argumento la dirección del inicio de la misma. Es decir s_count (&inicio);



/*Defino el tipo de estructura de cada nodo que tendrias como para hacer mas claro el ejemplo...para generalizar le pongo un dato numerico como información*/

struct nodo
{
int dato;
struct nodo *next;
};

/*Prototipo de funcion para s_count*/

int s_count (struct nodo**);

/*En el main tendrias algo asi...*/

int main (void)
{
int nodos;
struct nodo *inicio;

/*En alguna parte del main y con otras funciones inicializas y cargas datos en la lista*/

nodos = s_count (&inicio);

/*Haras lo que tengas que hacer con tu programa...liberas recursos, etc*/

return 0;

}

/*Cuerpo de la funcion s_count*/

int s_count (struct nodo **inicio)
{
struct nodo *act = *inicio;
int contador = 0;

while (act != NULL)
{
contador++;
act = act->next;
}

return contador;
}




En una lista doblemente enlazada tendrías otro campo como miembro del dato struct nodo, el cual seria un puntero al nodo anterior, es decir un struct nodo *ant.

A fines prácticos no lo usas para el propósito del enunciado....

Busca la excelencia, el éxito llegará
(Este mensaje fue modificado por última vez en: 20-02-2014 02:27 por Santi Aguito.)
20-02-2014 02:12
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Santi Aguito recibio 1 Gracias por este post
Gonsha (20-02-2014)
Dios Sin conexión
Presidente del CEIT
.
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.057
Agradecimientos dados: 32
Agradecimientos: 160 en 132 posts
Registro en: Dec 2011
Mensaje: #5
RE: TP N° 8 - Ejercicio 17 - Quien me ayuda?
(20-02-2014 02:12)Santi Aguito escribió:  A fines prácticos no lo usas para el propósito del enunciado....

Y es lo que le dijimos, pero el pibe nunca volvió a contestar.

«(…)Se arman paquetes… ¿eh?… tecnológicos… tecnológicos portes de… en donde están… este… interrelacionados con las otras capas.(…)»
20-02-2014 10:16
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Dios recibio 1 Gracias por este post
Gonsha (20-02-2014)
Gonsha Sin conexión
Presidente del CEIT
Wub Wub Nation
********

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 1.491
Agradecimientos dados: 166
Agradecimientos: 696 en 50 posts
Registro en: Mar 2012
Mensaje: #6
RE: TP N° 8 - Ejercicio 17 - Quien me ayuda?
Jajajaj posta colgue mal, perdon roll

Gracias generales por la ayuda gente! Ya lo pude hacer, jeje. Un gran abrazo!

[Imagen: tumblr_mram6vK6161rxdmpio1_400.gif]
20-02-2014 15:15
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 1 invitado(s)