You are on page 1of 8

Universidad Nacional

Andrés Bello
Facultad de Ingeniería - Escuela de
Informática
Algoritmos y Estructuras de
Datos
Profesor átedra!
arlos "ey
G u í a E jerc i ci o s – S ol e m n e I
1. Guarde en un arreglo de estructuras, los siguientes datos de cada integrante
de su grupo:
- Nombre
- Apellido
- Edad
- Sexo
- Estado Civil
- Trabajo
- Liceo de egreso
- Ttulo de trabajo actual
2. !e"ina Li"o # $i"o # a cu%l corresponde de cada T!A&
3. 'ndi(ue # expli(ue cu%les son los tres atributos "undamentales de un puntero #
de ejemplos de cada uno&
4. Nombre # de"ina los componentes principales de una "unci)n recursiva&
5. *bserve el siguiente c)digo:
• La "unci)n malloc de C:
a+ Libera memoria&
b+ Asigna ,emoria&
c+ Copia memoria&
d+ A # - por si solas&
e+ N&A
• La "unci)n retorna:
a+ .n entero /int+
b+ .n nodo
c+ .n puntero
d+ .n void
e+ No tiene retorno
6. *bserve el siguiente c)digo&
• 0Cu%ntas veces imprime 1Est% vaca23
a+ 4
b+ 5
c+ 6
d+ 7
e+ 'n"initas veces, pues est% en un ciclo sin condici)n de borde&
• Apilar es una "unci)n de la T!A:
a+ 8ila
b+ Stac9
c+ Cola
d+ A ) -
e+ !e cual(uiera, pues es programable&
7. *bserve el siguiente c)digo
• La lnea 5:5 reali;a una:
a+ .na 'teraci)n&
b+ .na bi"urcaci)n&
c+ .na impresi)n por pantalla /salida de datos+
d+ .na petici)n de datos al usuario /entrada de datos+
e+ A # -
• <especto a las lneas 5:= # 5:>, el error es el siguiente:
a+ p-?tope es de tipo pila # no puede alojarse en la
variable aux&
b+ aux-?siguiente no existe&
d+ aux @ p-?tope es correcta si aux "uera igual a 5&
e+ Ninguna es correcta&
• 5A5 # 5A6:
a+ Libera memoria&
b+ Asigna memoria&
c+ Lneas innecesarias&
d+ Se debi) respaldar aux, por lo cual, el programa en
ningBn caso puede compilar&
e+ N&A
8. .n banco, durante el da de la Telet)n, tiene problemas con su personal por lo
cual solo Ca podido abrir una caja /tpico de nuestros mu# expeditos bancos+&
Como en toda "ila, la atenci)n se reali;a segBn $'$* #, por "ortuna, durante el
da de la Telet)n solo se reali;an dep)sitos, por lo (ue cada persona (ue llega
deposita un cierto monto (ue se acumula # luego el cliente se retira&
Considerando esta "orma de dep)sito, escriba un pseudo-c)digo (ue utilice
alguna T!A # (ue permita obtener el monto acumulado al "inal del da&
9. .n grupo de astr)nomos con mucCo es"uer;o desarrollaron un modelo de la
Galaxia, no obstante, en el 644: tras un acuerdo de la comunidad astron)mica
internacional 8lut)n dej) de ser considerado un planeta, por lo (ue tuvieron
(ue cambiar su modelo& Luego en el 645D se descubre un planeta (ue s)lo
puede observarse cada 544 aEos, aun(ue est% mu# lejano al Sol se decide
(ue "orma parte del Sistema Solar, por lo (ue el nuevo planeta al (ue se le
denomina -roFn es agregado al Sistema Solar& Tras una larga discusi)n, al
aEo siguiente se decide incluir nuevamente a 8lut)n al Sistema Solar&
G'ndi(ue (ue tipo de T!A se puede utili;ar para esta soluci)n # proponga con
palabras una implementaci)n
10. 8ara una veterinaria se necesita gestionar un conjunto de datos dentro de la
misma& 8rimero& se deben atender los pacientes en orden de llegada, sin
importar su condici)n& Sin embargo, cada veterinario tiene una especialidad de
animal, por lo (ue son ordenes independientes& 8ara ordenar las "icCas de
animales, ocupan una caja, no ordenada, solo se puede tener acceso a la caja
desde la cima& 8ara cancelar, tienen prioridad siempre las personas (ue
cancelan con e"ectivo& !e"ina una T!A de pila, de cola # de lista para el
ejemplo&
GExpli(ue con palabras, no es necesario implementar una soluci)n
11. *bserve la siguiente "unci)n:
a+ <ealice una "unci)n recursiva en C (ue permita resolver dicCa
"unci)n&
b+ SegBn lo visto en clase, 0Tiene un buen comportamiento a nivel de
recurso3& $undamente&
12. <ealice un programa recursivo (ue permita calcular la potencia de un nBmero&
13. .n nBmero combinatorio es de"inido:
Genere un programa recursivo para "actorial # de"ina la "unci)n de
combinatoria&
14. !iseEe una "unci)n recursiva (ue calcule el nBmero de dgitos (ue tiene un
nBmero entero /en base 54+&
15. !iseEe una "unci)n recursiva en C para la siguiente representaci)n&
16. !iseEe una "unci)n recursiva en C para la siguiente representaci)n&
17. 'ndi(ue si es H o $ las siguientes a"irmaciones& Iusti"i(ue las "alsas:
a)
Si #o reali;o el siguiente lo siguiente, print"/1JdKn2,Ln+M Esto# imprimiendo
el valor de la variable&
b) .na pila /stac9+ es una colecci)n ordenada de elementos a los (ue solo
se puede acceder tanto por el inicio como por el "in de la pila
c) Si #o ingreso un elemento a una cola # luego elimin) un elemento de la
cola, elimino el mismo elemento&
d) Si #o ingreso un elemento a una pila # luego elimino un elemento de la
pila, elimino el mismo elemento&
e) En una lista enla;ada #o s)lo puedo eliminar al comien;o # "inal de la
lista&
f) Si #o ingreso un elemento a una Lista Enla;ada (ue #a tiene elementos,
la Bnica variable (ue cambia es "in&
g) Si #o elimino un elemento de la cola la Bnica variable (ue cambia es "in&
h) 8ara invertir los elementos de una cola, debo guardarlos en una pila # de
all volver a ingresarlo a la misma cola&
i) Si paso los datos de una cola N a una pila 8 # luego a una cola C,
obtengo los datos de N en el mismo orden& 8or ejemplo si N tiene 5,6 # 7& C
tendr% 5,6# 7&
j) Si en una pila solo se permite el ingreso de nBmeros pares, debera
modi"icar el apilar con un bucle&
k) Si paso los datos de una lista L a una cola N # luego a otra lista LL,
obtengo los datos de L invertidos en LL& 8or ejemplo si L tiene 5,6 # 7& LL
tendr% 7,6 # 5&
l) La Bnica di"erencia entre una pila # cola es (ue pila tiene un tope # la cola
tiene un inicio # un "in&
m) En una lista solo puede insertar # eliminar elementos del principio&
18. La siguiente T!A corresponde a una:
a+ 8ila
b+ Cola
c+ Lista
d+ a # b&
e+ b # c
19. !ado el siguiente c)digo rellenando la tabla s)lo cuando apare;ca un print"&
Lnea 8antalla
54 D
&
20. 0NuO di"erencias tiene una Lista Enla;ada vs una Cola3& Iusti"i(ue&
21. 'ndi(ue con (uO estructura de datos se est% trabajando, 0# (ue se est%
reali;ando3&
Nodo *aux=l->inicio;
int tamano= l->tamano,i=0;
while(i!=tamano-1){
aux=aux->siguiente;
i++;

Nodo *!=aux->siguiente; int
dato =!->datos->dato1; aux-
>siguiente=!->siguiente; l-
>"in=aux;
"#ee(aux);
"#ee(dato);
l->tamano--;
22. Si en una pila 8 inserto P elementos, luego insertar los 7 primeros elementos
de la pila 8 a una lista L, elimin) el inicio de la lista, # vuelvo a ingresar estos
elementos a la pila 8, luego elimin) las posiciones pares pasandolas a la pila
N # por Bltimo ingreso los elementos de la pila N a la pila 8& 0Cu%ntos
elementos tendr% 8, de (uO "orma est%n los elementos de la pila 8, est%n de la
misma "orma (ue originalmente, si elimin) el tope de 8 (ue elemento ser%3&
Suponga (ue 8@ 54 > = A : # el tope es 54&
23. 0NuO modi"icaci)n le Cara al c)digo del ejercicio 5>, para (ue "uncionara para
eliminar cual(uier posici)n exceptuando el inicio3& Si no sabe realice el c)digo
desde un comien;o&
<ecuerde (ue si tengo una lista L@ 5 6 7 D
la pos 4 @5
la pos 5 @ 6
y así sucesivame!e.