Está en la página 1de 6

CONTENDIO

1. Índice

2. Introducción

3. Desarrollo (Complejidad Computacional).


- 3.1 Definición
- 3.2 Características
- 3.3 Aplicaciones
- 3.4 Ventajas
- 3.5 Desventajas

4. Conclusiones

5. Bibliografía
INTRODUCCION

- El objetivo fundamental de la complejidad computacional es


facilitar el avance en aquellas áreas en las que se es posible.

- La complejidad computacional estudia la dificultad que se


presenta en problemas de importancia teórica o práctica.

- El esfuerzo y el tiempo necesario para resolver un problema de


forma eficiente puede variar en gran cantidad.
Complejidad Computacional

Definición
Es la rama de las ciencias de la computación que estudia, de manera
teórica, la optimización de los recursos requeridos durante la ejecución
de un algoritmo para resolver un problema en cuestión.

Características
El análisis se basa en dos aspectos:

 El tiempo. Mediante una aproximación al numero y tipo de pasos de


ejecución de un algoritmo para resolver un problema.

 El espacio. Mediante una aproximación a la cantidad de memoria


utilizada para resolver un problema.

Se pueden estudiar igualmente otros parámetros, tales como el número


de procesadores necesarios para resolver el problema, el cual se
denomina procesamiento en paralelo. La teoría de la complejidad
difiere de la teoría de la computabilidad en que esta se ocupa de la
factibilidad de expresar problemas como algoritmos efectivos sin tomar
en cuenta los recursos necesarios para ello.

Aplicaciones
Esta teoría tiene aplicación en casi todas las áreas de conocimiento
donde se desee resolver un problema computacionalmente, porque los
investigadores no solo desean utilizar un método para resolver un
problema, sino utilizar el más rápido. La teoría de la complejidad
computacional también tiene aplicaciones en áreas como la
criptografía, donde se espera que descifrar un código secreto sea un
problema muy difícil a menos que se tenga la contraseña, en cuyo caso
el problema se vuelve fácil.
Ventajas & Desventajas
El análisis de algoritmos es una actividad muy importante en el proceso
de desarrollo, especialmente en entornos con recursos restringidos (en
tiempo o en memoria).

El análisis de algoritmos es necesario para:

- Comparar dos algoritmos distintos.


- Predecir el comportamiento de un algoritmo en circunstancias
extremas.
- Ajustar los parámetros de un algoritmo para obtener los mejores
resultados.

El análisis se puede realizar en dos formas distintas:

Empírica (experimental), o teóricamente.


Tipo Ventajas Inconvenientes
Empírica “sencilla”, resultados Hace falta tener dos
“reales”. implementaciones
igual de cuidadas,
hacen falta datos
reales, más costosa,
dependiente de la
máquina.
Teórica Flexible, “barata, Resultados no
independiente de la “exactos”.
máquina.
CONCLUSIONES

Hoy en la actualidad este suceso de la complejidad computacional


se nos presenta en la mayoría de las áreas de conocimiento, en
donde se desee resolver un problema computacionalmente, esto se
debe a que actualmente los investigadores no solo buscan utilizar
un método para resolver un problema, sino que buscan utilizar el
método más rápido, a esto le podemos agregar también, cuales
son las eficiencias y cuales son las deficiencias de la complejidad
computacional.
BIBLIOGRAFIA

http://fisiwikipedia.wikispaces.com/file/view/Complejidad+computacion
al.pdf

http://es.wikipedia.org/wiki/Teor%C3%ADa_de_la_computación

http://users.dsic.upv.es/~jlinares/eda/complejidad%20computacional.p
df

También podría gustarte