Sunteți pe pagina 1din 3

1 Problema

Sea ( ) un arbol binario. La distan ia entre dos nodos es la longitud


G E; V

del amino que los one ta (suponemos que la distan ia entre ve inos es 1).
El diametro de un arbol es la distan ia maxima entre dos nodos ualesquiera.
En ontrar un algoritmo lineal en el numero de nodos para en ontrar el diametro
de un arbol.

2 Problema
Sea 1 2   
X ;X ; una se uen ia de numeros reales (no ne esariamente posi-
; Xn

tivos). Disea~nar un algoritmo lineal que en uentre una subse uen ia de numeros
( onse utivos) uyo produ to sea maximal. Por omodidad de nimos la subse-
uen ia va a on produ to 1.

3 Problema
Dado un arbol binario ( ), la distan ia entre dos nodos es la longitud del
G V; E

amino que los one ta (suponemos que la distan ia entre dos ve inos es 1).
Queremos onstruir una matriz uya entrada
A sea la distan ia entre los
Aij

nodos del rbol. Disear un algoritmo uadrti o que onstruya esta matriz,
vi ; vj

uando el rbol se entrega omo la matriz de adya en ia.

4 Problema
x ;x ; ; xn
P
Sea 1 2    un onjunto de enteros, y sea = =1 . Disear un algo-
S
n
i
xi

ritmo de omplejidad ( ) que divida el onjunto de enteros en dos onjuntos


O nS

de sumas iguales, o que determine que tal divisin es imposible.

5 Problema
Suponga que le dan un algoritmo en una aja negra, es de ir, que no sabe
X

omo esta he ho ni puede modi arlo. Dada una se uen ia de nmeros reales y un
nmero , el algoritmo responde "si" o "no" dependiendo de si la se uen ia tiene
k

un sub onjunto de nmeros uya suma es exa tamente . Disee un algoritmo que
k

utiliza ( ) llamadas al algoritmo para en ontrar el sub onjunto que suma


O n X

exa tamente . (note que solo di e si la subse uen ia existe)


k X

6 Problema
Construya un algoritmo que en uentre el mximo y el mnimo de un onjunto.
El algoritmo debe utilizar a lo ms 32 omparasiones (si = 2 ). Establez a
n
n
k

1
la razn por la ual este algoritmo no requiere las 2 n 3 ompara iones de un
algoritmo trivial de fuerz bruta.

7 Problema
Dado un arreglo de enteros [1 ℄, tal que, para todo , 1 
A :::n . Se i i < n

umple que j [ ℄ [ + 1℄j  1. Sea [1℄ = y [ ℄ = y adems


A i A i A x . Disee
A n y x < y

un algoritmo de bsqueda para en ontrar tal que [ ℄ = para algun valor


j A j z z

a otado por   . Cual es el mximo nmero de ompari iones que ha e su


x < y

algoritmo?.

8 Problema
La entrada es un onjunto de nmeros reales. Disee un algoritmo ( ) para
S O n

en ontrar un nmero que no est en el onjunto . Pruebe que la ota mnima del
S

nmero de pasos para resolver el problema es


( ). n

9 Problema
La entrada es un onjunto de nmeros reales, y un nmero . Disee un algoritmo
S x

para determinar si hay elementos (  2) de uya suma sea exa tamente .


k k S x

El algoritmo debe orrer en ( log ) time.


O kn n

10 Problema
Dados dos onjuntos 1 , 2 , y un nmero real , en ontrar dos elementos uno de
S S x

S1 y otro de 2 tales que su suma es exa tamente . El algoritmo debe orrer


S x

en tiempo ( ), uando es el nmero total de elementos en ambos onjuntos.


O n n

11 Problema
Dados dos onjuntos, disear un algoritmo que permita determinar si los dos
onjuntos son disjuntos. Dar la omplejidad del algoritmo en trminos de los
tamaos y de los dos onjuntos. Asegurese de onsiderar el aso de uando
m n

uno de los dos onjuntos es signi ativamente menor que el otro.

12 Problema
La entrada es una se uen ia de nmeros reales 1 2    on par. Disee
x ;x ; ; xn n

un algoritmo que divida el onjunto en 2 pares de la siguiente manera: Para


n=

ada par al ulamos la suma de sus omponentes. Denotamos por 1 2    n2 s ;s ; ;s

2
las 2 sumas. El algoritmo debe en ontrar la parti in que minimiza el mximo
n=

de las . si

13 Problema
La entrada son se uen ias de elementos, ada una de ellas ordenadas. El
d

numero total de elementos es . Disear un algoritmo ( log ) para mez lar


n O n d

todas las se uen ias para obtener una se uen ia nal ordenada.

14 Problema
La entrada es una se uen ia de enteros on mu has dupli a iones, de tal modo
n

que el numero de elementos distintos es log y el numero total de elementos es .


n n

Disee un algoritmo para ordenar este onjunto utilizando a lo mas ( log log ) O n n

ompara iones en el peor aso.

15 Problema
La entrada es un heap de tamao (en el que el elemento mas grande esta en el
n

tope) y un numero real . El heap esta dado omo arreglo. Disear un algoritmo
x

para determinar si el -esimo elemento mas grande en el heap es menor o igual


k

a . El peor aso de este algoritmo debe ser ( ), independientemente del


x O k

tamao del heap. Se puede utilizar ( ) espa io auxiliar. (Note que no ne esita
O k

en ontrar el esimo elemento mas grande, solo ne esita determinar su rela ion
k

de igualdad on ). x

16 Problema
Sea un algoritmo que en uentra el -esimo elemento mas grande utilizando
A k

una su esion de ompara iones. Probar que posee su iente informa ion para
A

determinar uales elementos son mas grandes que el -esimo mas grande y uales
k

son mas hi os que el -esimo mas grande. En otras palabras, es posible partir
k

el onjunto alrededor del -esimo sin ha er mas ompara iones que las que ya
k

hizo .A

17 Problema
Una se uen ia binaria i li a de tamao 2 es llamada de "De Bruijn" si toda
S
n

se uen ia binaria de tamao se en uentra omo subse uen ia de . Por


s n S

ejemplo, para = 3 la se uen ia 10001011 es de "De Bruijn". Disee un algoritmo


n

que genere una se uen ia de "De Bruijn" para una dada. n

S-ar putea să vă placă și