04-03-2015, 11:33
Les dejo lo que se tomo en el final de Info 1 de electronica la ultima fecha de verano:
Era una lista doblmente enlzada, la condiciones era hace 2 de 3 las funciones, estaba prohibido imprimir algo por stdout, y se podia usar malloc solo una vez en el final. No se pedia nada loco la verdad, pero no habia margen de error, habia que hacer todos los returns de las funciones para que sea tomado bien el ejercicio sino te lo tomaban como mal, y a la primera cosa mal se anulaba el ejercicio.
No habia teoria.
struct nodo_S {
int dato;
struct nodo_S ant;
struct nodo_S *sig;
}
Eran tres funciones:
1) int BorrarLista (struct nodo_s **p)
Devolvía: 0 si estaba vacia
-1 si p era NULL
La cantidad de nodos borrados
O otro numero negativo en cada de otro error
2) int agregarOrdenado (struct nodo_s **p, int dato)
Devolvía: 0 si estaba vacia la lista
1 Si no estaba vacia la lista, pero se agregaba primero el nodo
2 Si se agrebaba en el medio de la lista
3 Si se agregaba en el final de la lista
-1 si p era NULL
-2 Si habia algun error con malloc
O otro numero negativo en cada de otro error
3) int BorrarNodo(struct nodo_s **p, int dato)
Devolvía: 0 si estaba vacia
1 Si se borraba el primero
2 Si se borraba en el medio de la lista
3 Si se borraba en el final de la lista
-1 si p era NULL
-2 Si no se encontraba ningun nodo
La cantidad de nodos borrados
O otro numero negativo en cada de otro error
Espero que les sirva, saludos
Era una lista doblmente enlzada, la condiciones era hace 2 de 3 las funciones, estaba prohibido imprimir algo por stdout, y se podia usar malloc solo una vez en el final. No se pedia nada loco la verdad, pero no habia margen de error, habia que hacer todos los returns de las funciones para que sea tomado bien el ejercicio sino te lo tomaban como mal, y a la primera cosa mal se anulaba el ejercicio.
No habia teoria.
struct nodo_S {
int dato;
struct nodo_S ant;
struct nodo_S *sig;
}
Eran tres funciones:
1) int BorrarLista (struct nodo_s **p)
Devolvía: 0 si estaba vacia
-1 si p era NULL
La cantidad de nodos borrados
O otro numero negativo en cada de otro error
2) int agregarOrdenado (struct nodo_s **p, int dato)
Devolvía: 0 si estaba vacia la lista
1 Si no estaba vacia la lista, pero se agregaba primero el nodo
2 Si se agrebaba en el medio de la lista
3 Si se agregaba en el final de la lista
-1 si p era NULL
-2 Si habia algun error con malloc
O otro numero negativo en cada de otro error
3) int BorrarNodo(struct nodo_s **p, int dato)
Devolvía: 0 si estaba vacia
1 Si se borraba el primero
2 Si se borraba en el medio de la lista
3 Si se borraba en el final de la lista
-1 si p era NULL
-2 Si no se encontraba ningun nodo
La cantidad de nodos borrados
O otro numero negativo en cada de otro error
Espero que les sirva, saludos