Академический Документы
Профессиональный Документы
Культура Документы
Elaborado por:
Ing. Ubaldo Perez Ferreira
A Nivel 0
B Nivel 1 C
D E F G
Nivel 2
2
21. Decir qué resultado se obtiene para las siguientes expresiones (mostrando los pasos
para la obtención del resultado), utilizando la especificación del TAD Cola(elemento):
a) ¿Descendientes de E?
b) ¿Descendientes propios de C?
c) ¿Ascendientes de E?
d) ¿Ascendientes propios de I?
e) ¿Tamaño de B?
f) ¿Tamaño de F?
g) ¿Tamaño del árbol?
24. Suponiendo la especificación formal para el TAD Entero (con las operaciones: cero,
sucesor, esCero, igual, suma), escribir la sintaxis y la semántica correspondientes a una
operación esMenor, que comprueba si un entero es menor (estrictamente) que otro.
26. Dada una lista circular A (desordenada y con elementos repetidos) se quiere que usted
obtenga una lista circular B que contenga los elementos que están en A sin repeticiones,
seguidos por el número de ocurrencias. La lista A puede ser modificada. Trabaje suponiendo
que la clase lista circular NO tiene cola a efectos de los métodos a programar.
3
Por ejemplo, si A=(3,4,5,3,3,2,1,1,5,6,3,2,7,9,0,1,1,0,1), su algoritmo debe retornar la lista
B=(3,4,4,1,5,2,2,2,1,5,6,1,7,1,9,1,0,2). Los dos primeros elementos de la lista significan que el 3
aparece 4 veces, los siguientes que el 4 aparece una vez, que el 5 aparece 2 veces y asi
sucesivamente.
1. i=2
2. while i < m
3. i=i+1
4. if p2(m) = i then
5. print i
6. else
7 j=0
8 while j <= m
9 j=j+1
10 print i*j
11 end while
12 end if
13 end while
Considerar que O(p2(n))=n2 y que 1/2 del if son verdaderas.
39. Dado el siguiente algoritmo que ordena la lista A[] de forma ascendente:
49. Se desea almacenar en el vector V(m) dos Pilas S1 y S2, se utilizara dos puntero Top1 y
Top2 para cada pila respectivamente, tal como se muestra en el esquema siguiente:
50. Se desea almacenar en el vector V(m) n Pilas S1, S2, …, Sn , Cada Pila Si tendra un
tamaño de │m/n│.
5
51. Que es el Análisis de Algoritmos?
El IF es verdadero en 1/2
53. Escriba la Especificación Formal del TAD Pila e implemente las siguientes funciones
utilizando un vector V[n].
55. Una matriz de M-columnas puede ser vista como M-pilas consecutivas, donde la
operación push de colocar un elemento en la pila, debería recibir el elemento a colocar y la
identificación de la pila j donde se desea introducir el elemento. Elabore el algoritmo que permita
implementar la operación push de una sucesión de M-pilas en un objeto matriz NxM.
Ejemplo: un examen
6
Mensaje original
U n e x a m e n
a e n e U x m
Cola de caracteres
n
6 4 2 8 1 5 7 3 9 Cola de posiciones
57. Hacer un método que reciba una lista y una pila, el método deberá modificar la lista
original, eliminando las posiciones indicadas por cada nodo de la pila.
Pila -> 2 6
58. Decimos que una pila P es un sombrero de otra pila Q, si todos los elementos de P están
en Q, en el mismo orden, y en las posiciones más próximas a la cima. La pila nula se considera
un sombrero de cualquier pila. Por ejemplo, en la siguiente figura, la pila A es un sombrero de la
pila B, pero no de la pila C. Escribir un método que dado dos pilas de números enteros, verifique
si la primera es sombrero de la segunda.