Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Ingeniería Infórmatica 06 2012, Exámenes de Ingeniería Infórmatica

Examen junio 2012

Tipo: Exámenes

2011/2012

Subido el 31/05/2012

usuario desconocido
usuario desconocido 🇪🇸

2.7

(3)

5 documentos

1 / 3

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Universidad de Huelva. Escuela Técnica Superior de In geniería
Departamento de Tecnologías de la Información
FUNDAMENTOS DE ANÁLISIS DE ALGORITMOS
GRADO EN INGENIERÍA INFORMÁTICA. La Rábida 20 de junio del 2012
Página 1/3
ALUMNO/A:
HOJAS:
NOTA:
Tiempo máximo: 120 minutos.
EJERCICIO 1
PUNTOS:
Responder brevemente las siguientes cuestiones justificando las respuestas (0,5 puntos cada respuesta correcta).
(a) Dos algoritmos, A y B, resuelven un problema mediante las funciones TA(n)=100n y TB(n)=2n2,
respectivamente.
¿Cuál deberíamos usar? ¿Cuándo uno de ellos, y cuál, es el doble de rápido y, cuándo 20 veces más rápido?
(b) Sabiendo que los órdenes de eficiencia son clases de equivalencia y, dadas las funciones
T1(n)= 2n3 + 4n2 + 5 y T2(n)= n3- 4n,
¿Pertenecen a la misma clase?, en caso afirmativo ¿cuál es la función representante?
EJERCICIO 2
PUNTOS:
(0,25 ptos cada respuesta correcta):
(a) Demostrar que si f(n)
O(n) entonces (f(n))2
O(n2). ¿Se puede generalizar el resultado? En caso afirmativo,
enunciarlo.
(b) Indicar razonadamente la verdad o falsedad de las siguiente afirmación f (n)
O(n) 2f (n)
O
(
2
n
)
¿Cuáles de las siguientes afirmaciones son verdaderas? Demostrar las respuestas usando la definición de O(f(n)).
(c) log n
O(n)
(d) n
O(log n)
EJERCICIO 3
PUNTOS:
Escribir un algoritmo voraz para planificar un evento cultural que consiste en n conferencias que se celebrarán en
10 aulas diferentes. Cada conferencia se celebra una sola vez y se conoce el aula donde se celebra, la hora de
comienzo y su duración. El único objetivo es asistir al máximo número posible de conferencias.
EJERCICIO 4
PUNTOS:
Ordenar el siguiente vector utilizando Mergesort y Quicksort : A
=
{ 9, 1, 3, 5, 0 , 4, 2, 6, 8, 7}.
EJERCICIO 5
PUNTOS:
Resolver las siguientes ecuaciones de recurrencia (1 punto cada una):
(a) T(n)= 5 T(n-1) + 6 T(n-2) + 4 *3n, n2, T(0)=0, T(1)=36
(b) T(n)= 2T(n/2) + nlogn
pf3

Vista previa parcial del texto

¡Descarga Ingeniería Infórmatica 06 2012 y más Exámenes en PDF de Ingeniería Infórmatica solo en Docsity!

Departamento de Tecnologías de la Información

FUNDAMENTOS DE ANÁLISIS DE ALGORITMOS GRADO EN INGENIERÍA INFORMÁTICA. La Rábida 20 de junio del 2012

ALUMNO/A: Nº HOJAS: NOTA:

  • Tiempo máximo: 120 minutos.

EJERCICIO 1 PUNTOS: 1

Responder brevemente las siguientes cuestiones justificando las respuestas (0,5 puntos cada respuesta correcta).

(a) Dos algoritmos, A y B, resuelven un problema mediante las funciones TA(n)=100n y TB(n)=2n 2 , respectivamente. ¿Cuál deberíamos usar? ¿Cuándo uno de ellos, y cuál, es el doble de rápido y, cuándo 20 veces más rápido?

(b) Sabiendo que los órdenes de eficiencia son clases de equivalencia y, dadas las funciones T1(n)= 2n^3 + 4n 2 + 5 y T2(n)= n 3 - 4n, ¿Pertenecen a la misma clase?, en caso afirmativo ¿cuál es la función representante?

EJERCICIO 2 PUNTOS: 1

(0,25 ptos cada respuesta correcta):

(a) Demostrar que si f(n) ∈ O(n) entonces (f(n)) 2 ∈ O(n^2 ). ¿Se puede generalizar el resultado? En caso afirmativo,

enunciarlo.

(b) Indicar razonadamente la verdad o falsedad de las siguiente afirmación f ( n ) ∈ O( n ) ⇒ 2 f^ ( n )^ ∈ O ( 2 n )

¿Cuáles de las siguientes afirmaciones son verdaderas? Demostrar las respuestas usando la definición de O(f(n)).

(c) log n ∈ O(n)

(d) n ∈ O(log n)

EJERCICIO 3 PUNTOS: 1

Escribir un algoritmo voraz para planificar un evento cultural que consiste en n conferencias que se celebrarán en 10 aulas diferentes. Cada conferencia se celebra una sola vez y se conoce el aula donde se celebra, la hora de comienzo y su duración. El único objetivo es asistir al máximo número posible de conferencias.

EJERCICIO 4 PUNTOS: 2

Ordenar el siguiente vector utilizando Mergesort y Quicksort : A = { 9, 1, 3, 5, 0, 4, 2, 6, 8, 7}.

EJERCICIO 5 PUNTOS: 3

Resolver las siguientes ecuaciones de recurrencia (1 punto cada una):

(a) T(n)= 5 T(n-1) + 6 T(n-2) + 4 *3 n, n≥2, T(0)=0, T(1)=

(b) T(n)= 2T(n/2) + nlogn

Departamento de Tecnologías de la Información

FUNDAMENTOS DE ANÁLISIS DE ALGORITMOS GRADO EN INGENIERÍA INFORMÁTICA. La Rábida 20 de junio del 2012

(c) Determinar y resolver la ecuación de recurrencia para el siguiente algoritmo:

int funcion ternarysearch(v:vector;primero,ultimo,clave:int) tercio ← 0, dostercios ← 0; si primero = ultimo entonces si clave = v[primero] entonces devolver primero; sino devolver -1; f si f si si ultimo-primero = 1 entonces si clave = v[primero] devolver primero; sino si clave = v[ultimo] entonces devolver ultimo; sino devolver -1; fsi fsi fsi tercio ← ((ultimo - primero + 1) / 3) + primero; dostercios ← (ultimo -tercio) + primero; si clave = v[tercio] entonces devolver tercio; sino si clave < v[tercio] entonces devolver ternarysearch (v, primero, tercio-1, clave); sino si clave = v[dostercios] entonces devolver dostercios; sino si clave < v[dostercios] entonces devolver ternarysearch (v, tercio+1, dostercios-1, clave); sino devolver ternarysearch (v, dostercios+1, ultimo, clave); fsi fsi fsi fsi ffuncion ternarySearch