Despacho aduanal

Solo disponible en BuenasTareas
  • Páginas : 5 (1020 palabras )
  • Descarga(s) : 0
  • Publicado : 20 de febrero de 2012
Leer documento completo
Vista previa del texto
DEPARTAMENTO DE SISTEMAS Y COMPUTACION



LICENCIATURA EN COMPUTACION
ESPECIALIDAD



ESTRUCTURA DE DATOS II
MATERIA



FRANCISCO JAVIER ESCOPPINICHI FERNANDEZ
MAESTRO

ANALISIS DE ALGORITMOS
TEMA

MARIA GUADALUPE RAMIREZ ALEMAN
ALUMNO



VIERNES 02 DE DICIEMBRE DE 2011
FECHA DE ENTREGA










Introducción

Como se ha visto, existen mucho enfoques pararesolver un problema, pero como escogemos entre ellos. Generalmente hay dos metas en el diseño de programas de computo:

✓ El diseño de un algoritmo que sea fácil de entender, codificar y depurar (ingeniería de software).

✓ El diseño de un algoritmo que haga uso eficiente de los recursos de la computadora (análisis y diseño de algoritmos).

El diseño de algoritmos nos permite medir ladificultad inherente de un problema y evaluar la eficiencia de un algoritmo.

Un objetivo natural en el desarrollo de un programa de computacional es mantener tan bajo como sea posible el consumo de los diversos recursos, aprovechándolos de la mejor manera que se encuentre. Se desea un buen uso, de los recursos disponibles, sin desperdiciarlos.

Para que un programa sea practico, en términosde requerimientos de almacenamiento y tiempo de ejecución, debe organizar sus datos en una forma que apoye el procesamiento eficiente.



















Consideraciones de eficiencia


Un algoritmo es eficiente cuando logra llegar a sus objetivos planteados utilizando la menor cantidad de recursos posibles, minimizando el uso de memoria, de paso y de esfuerzo humano.Inventar algoritmos es relativamente fácil. En la práctica, sin embargo, no se pretende sólo diseñar algoritmos, si no más bien que buenos algoritmos. Así, el objetivo es inventar algoritmos y probar que ellos mismos son buenos.

La calidad de un algoritmo puede ser avalada utilizando varios criterios. Uno de los criterios más importantes es el tiempo utilizado en la ejecución de los algoritmos.Existen varios aspectos a considerar en cada criterio de tiempo. Uno de ellos está relacionado con el tiempo de ejecución requerido por los diferentes algoritmos, para encontrar la solución final de un problema o cálculo particular.

Normalmente, un problema se puede resolver por métodos distintos, con diferentes grados de eficiencia. Por ejemplo: búsqueda de un número en una guía telefónica.Cuando se usa un computador es importante limitar el consumo de recursos.

Recurso Tiempo:

✓ Aplicaciones informáticas que trabajan “en tiempo real” requieren que los cálculos se realicen en el menor tiempo posible.

✓ Aplicaciones que manejan un gran volumen de información si no se tratan adecuadamente pueden necesitar tiempos impracticables.

Recurso Memoria:

· Las máquinastienen una memoria limitada.






Medición del tiempo de Ejecución


Una medida que suele ser útil conocer es el tiempo de ejecución de un algoritmo en función de N, lo que denominaremos T(N). Esta función se puede medir físicamente (ejecutando el programa, reloj en mano), o calcularse sobre el código contando instrucciones a ejecutar y multiplicando por el tiempo requerido por cadainstrucción.

Así, un trozo sencillo de programa como:
S1; FOR i:= 1 TO N DO S2 END;

Requiere:
T(N):= t1 + t2*N

siendo t1 el tiempo que lleve ejecutar la serie "S1" de sentencias, y t2 el que lleve la serie "S2".

Prácticamente todos los programas reales incluyen alguna sentencia condicional, haciendo que las sentencias efectivamente ejecutadas dependan de los datos concretos que sele presenten.

No se puede medir el tiempo en segundos porque no existe un computador estándar de referencia, en su lugar medimos el número de operaciones básicas o elementales.

Las operaciones básicas son las que realiza el computador en tiempo acotado por una constante, por ejemplo:

✓ Operaciones aritméticas básicas.
✓ Asignaciones de tipos predefinidos.
✓ Saltos...
tracking img