Beruflich Dokumente
Kultur Dokumente
Fecha: ____________
PARTE I. MEMORIA DINMICA Y APUNTADORES (1 5 preguntas todos, siguientes 5 los que deben)
1. En que consiste un apuntador
2. Describe (en palabras o grficamente) lo que significa cada una de las lneas del cdigo siguiente:
int a, b, *aa, *ab;
float x, y, *ax, *ay;
aa = a;
ab = aa;
*ab = 12;
*aa = 33;
ax = &x;
ay = ay;
*ax = 23.6;
*ay =3.1416;
3. Cul sera la salida en pantalla del siguiente cdigo:
#include <conio.h>
#include <iostream.h>
void main(){
int a, b, *aa, *ab;
float x, y, *ax, *ay;
aa = a;
ab = aa;
*ab = 12;
*aa = 33;
ax = &x;
ay = ay;
*ax = 23.6;
*ay =3.1416;
cout<<Valor apuntado por aa: <<*aa<<endl;
cout<<Valor apuntado por ab: <<*ab<<endl;
cout<<Valor apuntado por ax: <<*ax<<endl;
cout<<Valor apuntado por ay: <<*ay<<endl;
getch();
}
4. Menciona cuando es aconsejable usar la memoria dinmica.
5. Es el siguiente programa correcto? Cual es el valor final de a?
int a;
int *b;
a=2;
b=&a;
*b=(*b)*(*b);
6. Indicar el significado de las siguientes expresiones:
int *pint ; double *preal ;
char *letra, *codigo ;
int y, var=10 ;
pint = &var ;
y = var ; y = *pint ;
7. Para cada uno de los siguientes enunciados, escriba el trozo de cdigo correspondiente. Suponga que se han
declarado las variables num1 y num2 de tipo flotante.
a) Declare la variable fPtr como apuntador a un flotante
b) Asigne la direccin de la variable num1 a la variable fPtr
c) Imprima el valor del objeto sealado por fPtr
d) Asigne el valor del objeto sealado por fPtr a la variable num2
pgina 1/6
Nombre: ________________________________________
Fecha: ____________
pgina 2/6
Nombre: ________________________________________
Fecha: ____________
i = nn;
cout<<i->dato<<endl;
cout<<i->sig->dato<<endl;
cout<<i->sig->sig->dato<<endl;
getch();
}
a) Dibuja la lista resultante
b) Describe la salida a pantalla
5. Menciona las caractersticas de una lista simple.
6. Menciona las caractersticas de una lista doble.
7. Describe los pasos a realizar para insertar un elemento al inicio de una lista simple.
8. Dado el siguiente algoritmo indica que operacin realiza, indica el tipo de lista al que corresponde:
Algoritmo X (Tnodo *L) {
Tnodo *nn;
Nn = nuevo();
Si (L == NULL) lista vacia
Sino {
nn->sig = L;
L = nn;
L->ant = nn;
}
}
9. Usando insercin al inicio dibuja la lista resultante despus de insertar los elementos: 24, 35, 67, 12, 90 y 45.
10.
Para cada uno de los siguientes enunciados, escriba el trozo de cdigo correspondiente.
a) Declare la estructura nodo con dos campo: uno para valores enteros y otro llamado sig, de tipo apuntador a
la estructura nodo.
b) Declare un apuntador a lista llamado inicio (apuntador de tipo estructura nodo)
c) Inicializar el apuntador al inicio de la lista.
d) Introduzca los valores 24, 48, 99, 33 y 57 en la lista.
e) Eliminar el primer elemento de la lista.
f) Eliminar el ltimo elemento en la lista.
g) Mostrar todos los elementos que contiene la lista.
pgina 3/6
Nombre: ________________________________________
Fecha: ____________
5. Del siguiente rbol, describe la siguiente informacin: a) total de nodos hoja, b) orden del rbol, c) nivel
del nodo 2, d) grado del rbol, altura del rbol.
pgina 4/6
Nombre: ________________________________________
a)
b)
c)
d)
Fecha: ____________
pgina 5/6
Nombre: ________________________________________
Fecha: ____________
2. Dibuja el estado de una pila implementada con un arreglo de tamao 5, al realizar cada una de las
siguientes operaciones (indica que posicin tendr tope en cada operacin):
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Sacar
Meter H
Meter N
Meter U
Meter K
Meter Z
Sacar
Sacar
Meter D
Meter E
pila
pila
pila
pila
pila
pila
pila
pila
pila
pila
3. Dibuja el estado de una cola circular implementada con un arreglo de tamao 5, al realizar cada una de
las siguientes operaciones (indica que posicin tendr frente y fin en cada operacin):
1. Meter X
2. Meter Y
3. Meter Z
4. Sacar
5. Meter A
6. Meter B
7. Meter C
8. Sacar
9.Sacar
10.Sacar
Cola
Cola
Cola
Cola
Cola
Cola
Cola
Cola
Cola
Cola
4. Considera una pila con los siguientes elementos 56, 89, 23, 90,12, 67, 78,22 (el primer elemento sera
el 56 y el ltimo el 22). Describe las operaciones a seguir para sacar el 12.
PARTE VI. ORDENAMIENTOS Y BSQUEDAS
1. Menciona ejemplos y aplicaciones computacionales en los que se necesite usar algoritmos de
ordenamiento o bsqueda.
2. Menciona la diferencia entre el algoritmo de bsqueda lineal y el de bsqueda binaria.
3. Describe la forma en que trabaja cualquiera de los algoritmos de ordenacin burbuja, heap, shell, quick o
merge.
4. Si se cuenta con un arreglo de elementos ordenados y se necesita localizar un elemento, cul algoritmo
de bsqueda es el indicado para realizar esta tarea?
pgina 6/6