• No se han encontrado resultados

Análisis de algoritmos

N/A
N/A
Protected

Academic year: 2022

Share "Análisis de algoritmos"

Copied!
9
0
0

Texto completo

(1)

Ejercicios: Análisis de algoritmos no recursivos

Análisis de algoritmos

(2)

1. Encuentre el orden 𝑂 de complejidad temporal y espacial del algoritmo de ordenamiento por BurbujaSimple.

Análisis de algoritmos Ejercicios: Análisis de algoritmos no recursivos Prof. Edgardo Adrián Franco Martínez

Ejercicios: Análisis de algoritmos no recursivos

Procedimiento BurbujaSimple(A,n) para i=1 hasta (i<n) hacer

para j=0 hasta (j<n-1) hacer si (A[j]>A[j+1]) hacer

temp = A[j]

A[j] = A[j+1]

A[j+1] = temp fin si

fin para fin para

fin Procedimiento

(3)

2. Encuentre el orden 𝑂 de complejidad temporal y espacial del algoritmo de ordenamiento por Inserción.

Análisis de algoritmos Ejercicios: Análisis de algoritmos no recursivos Prof. Edgardo Adrián Franco Martínez

Procedimiento Insercion(A,n) {

para i=1 hasta i<n hacer temp=A[i]

j=i-1

mientras((A[j]>temp)&&(j>=0)) hacer A[j+1]=A[j]

j--

(4)

3. Encuentre el orden 𝑂 de complejidad temporal y espacial del algoritmo de ordenamiento por Seleccion.

Análisis de algoritmos Ejercicios: Análisis de algoritmos no recursivos Prof. Edgardo Adrián Franco Martínez

Procedimiento Seleccion(A,n)

para k=0 hasta k<n-1 hacer p=k;

para i=k+1 hasta i>n-1 hacer si A[i]<A[p] hacer

p = i fin si

si p!=k hacer

temp = A[p]

A[p] = A[k]

A[k] = temp fin si

fin para fin para

fin Procedimiento

(5)

4. Encuentre el orden 𝑂 de complejidad temporal y espacial del algoritmo de ordenamiento Shell.

Análisis de algoritmos Ejercicios: Análisis de algoritmos no recursivos Prof. Edgardo Adrián Franco Martínez

Procedimiento Shell(A,n) k = n / 2;

mientras k >= 1 hacer

para i=k hasta i>=n hacer v = A[i]

j = i - k;

mientras j >= 0 && A[j] > v hacer A[j + k] = A[j];

j -= k;

fin mientras A[j + k] = v;

(6)

5. El máximo común divisor de dos enteros positivos n y m;

denotado por MCD(n,m); es el único entero positivo k tal que k divide a m y n y todos los demás enteros que dividen a m y n son menores que k. Encuentre el orden 𝑂 de complejidad temporal y espacial del algoritmo.

Análisis de algoritmos Ejercicios: Análisis de algoritmos no recursivos Prof. Edgardo Adrián Franco Martínez

func MaximoComunDivisor(m, n) {

a=max(n,m);

b=min(n,m);

residuo=1;

mientras (residuo > 0) {

residuo=a mod b;

a=b;

b=residuo;

}

MaximoComunDivisor=a;

(7)

6. Evaluación de polinomios (Algoritmo 01). Realice el análisis de complejidad temporal y espacial.

Análisis de algoritmos Ejercicios: Análisis de algoritmos no recursivos Prof. Edgardo Adrián Franco Martínez

classPolinomio {

private double[]coeficientes;

Polinomio (double[]coeficientes) {

this.coeficientes=newdouble[coeficientes.length];

System.arraycopy(coeficientes,0, this.coeficientes, 0,coeficientes.length);

}

doubleevalua_1 (doublex) {

doubleresultado=0.0;

for(inttermino= 0;termino <coeficientes.length;termino++) {

(8)

7. Evaluación de polinomios mejorada (Algoritmo 02). Realice el análisis de complejidad temporal y espacial.

Análisis de algoritmos Ejercicios: Análisis de algoritmos no recursivos Prof. Edgardo Adrián Franco Martínez

doubleevalua_2 (doublex) {

doubleresultado=0.0;

for(inttermino=0;termino <coeficientes.length;termino++) {

resultado+=coeficientes[termino] *potencia(x, termino);

}

returnresultado;

}

private doublepotencia(double x,intn) {

if(n ==0)

return1.0;

// si es potencia impar ...

if(n%2==1)

returnx *potencia(x,n-1);

// si es potencia par ...

doublet= potencia(x, n/2);

(9)

8. Investigar, explicar y evaluar la complejidad temporal y espacial del Algoritmo de Strassen para multiplicación de matrices.

*Incluir la redacción de cada ejercicio

*Portada con fotografía y encabezados de pagina.

Análisis de algoritmos Ejercicios: Análisis de algoritmos no recursivos Prof. Edgardo Adrián Franco Martínez

Referencias

Documento similar

Partamos de un cuerpo de comunicación cualquiera: ante nosotros, como objeto de análisis, una novela de vanguardia, un film de tema religioso, una colección de peródicos de la tarde,

El hecho de que, después de decenios de examen en la Comisión de Derecho In- ternacional, se trate de poner en vía muerta el proyecto de artículos sobre res- ponsabilidad del Estado

En el tercer capítulo se describe uno de los algoritmos más importantes del siglo XX, denominado PSLQ, a través del cual, se consiguió una fórmula para calcular el n-ésimo dígito

Este método tiene la finalidad de proporcionar una gran cantidad de magnitudes de la matriz de cargas sparse; es decir, nulas, haciendo que cada componente principal

Evaluaciones para ingresar a empresas BigTech utilizan problemas estilo competencia. Google Code

De este modo se constituye un espacio ontológico y epistemológico a la vez, en el que cada elemento (cada principio) ocupa un lugar determinado en la totalidad, y desde ahí está

Por el contrario, si hay reincidencia en la siguiente ventana temporal será, o bien porque el nivel asignado no es suficiente para poder proteger a la víctima (e incluso con alguno

En este caso, se presentó un análisis cuantitativo de dos algoritmos que controlan la navegación de un robot móvil simulado, se comparó el desempeño de los algoritmos con