Sie sind auf Seite 1von 2

ESTRUCTURAS DE DATOS: Ejercicios de Complejidad de Algoritmos

Parte I. Complejidad de un algoritmo. Determinar el tiempo de clculo de los siguientes


algoritmos. Para cada algoritmo, se pide evaluar el mejor caso y el peor caso. Mostrar el
pseudocdigo asociado al algoritmo.
1. Se tiene el arreglo A de tamao N que contiene las notas de los alumnos en una prueba.
Se desea contar cuantos alumnos tienen una nota superior a 5,0 en la prueba
2. Se tiene el arreglo A de tamao N que contiene las notas de los alumnos en una prueba.
Se desea informar si algn estudiante obtuvo un 7,0 en la prueba. Responder con un
SI o NO.
3. Se tienen dos arreglos, A y B, de tamao N. Se desea verificar si los dos arreglos son
idnticos. Responder con un SI o NO.
4. Se tiene el arreglo A de tamao N, Se desea sumar el primer elemento, el ltimo
elemento y el elemento del medio del arreglo
5. Se tiene una matriz A de tamao N * N; N es un nmero par; Se desea calcular la suma
total de los valores que estn en las filas impares de la matriz.
6. Se tiene el arreglo A de tamao N ordenado de menor a mayor y se desea saber si se
encuentra en el arreglo el valor X. Entregar la posicin de X en el arreglo; si X no se
encuentra informar un -1
7. Se tiene una matriz A y una matriz B, ambas de tamao N * N. Se desea sumar las
matrices
8. Se tiene una matriz A de tamao p*q y una matriz B de tamao q*r. Se desea
multiplicar las matrices
Parte II. Complejidad de un algoritmo. Determinar el tiempo de clculo del algoritmo de
ordenamiento por seleccin que se muestra ms abajo: Se pide evaluar el mejor caso y el
peor caso.
Los datos se encuentran en el arreglo A, desde la posicin 1 a la posicin n.
For i = 1 to n-1 do
k=i
x = A[i]
For j = i + 1 to n do
If A[j] < x then
k=j
x = a[j]
End if
End for
A[k]= A[i]
A[i] = x
End for

Parte III. Complejidad de un algoritmo. Determinar el tiempo de clculo del algoritmo de


ordenamiento por insercin que se muestra ms abajo: Se pide evaluar el mejor caso y el
peor caso.

Los datos se encuentran en el arreglo A, desde la posicin 1 a la posicin n.


For i = 2 to n do
x = A[i]
A[0] = x
j=i-1
While x < A[j] do
A[j + 1] = A[j]
j = j - 1;
End while
A[j + 1] = x
End for
Parte IV. Complejidad de un algoritmo. Determinar el tiempo de clculo del algoritmo de
ordenamiento de burbujas que se muestra ms abajo: Se pide evaluar el mejor caso y el
peor caso.
Los datos se encuentran en el arreglo A, desde la posicin 1 a la posicin n.
For i = 2 to n do
For j = n downto i do
If A[j - 1] > A[j ] then
// intercambiar los valores
aux = A[j - 1]; A[j - 1] = A[j ]; A[j ] = aux;
End if
End for
End for
Parte V. Complejidad de un algoritmo. Determinar el tiempo de clculo del algoritmo
modificado de ordenamiento de burbujas que se muestra ms abajo: Se pide evaluar el
mejor caso y el peor caso.
Los datos se encuentran en el arreglo A, desde la posicin 1 a la posicin n.
For i = 2 to n do
cont = o
For j = n downto i do
If A[j - 1] > A[j ] then
// intercambiar los valores
aux = A[j - 1]; A[j - 1] = A[j ]; A[j ] = aux;
cont =cont + 1;
End if
End for
If cont = 0 then
Break // salir del ciclo for
End if
End for

Das könnte Ihnen auch gefallen