Jksdfjefhefuh

Solo disponible en BuenasTareas
  • Páginas : 2 (339 palabras )
  • Descarga(s) : 0
  • Publicado : 10 de febrero de 2011
Leer documento completo
Vista previa del texto
Concepto Complejidad Algoritmos

La resolución práctica de un problema exige por una parte un algoritmo o método de resolución y por otra un programa o codificación de aquel en un ordenador real.Ambos componentes tienen su importancia, pero la del algoritmo es absolutamente esencial, mientras que la codificación puede muchas veces pasar a nivel de anécdota.

A efectos prácticos oingenieriles, nos deben preocupar los recursos físicos necesarios para que un programa se ejecute.
Aunque puede haber muchos parámetros, los más usuales son el tiempo de ejecución y la cantidad de memoria(espacio).
Ocurre con frecuencia que ambos parámetros están fijados por otras razones y se plantea la pregunta inversa: ¿cuál es el tamaño del mayor problema que puedo resolver en T segundos y/o conM bytes de memoria?
En lo que sigue nos centramos casi siempre en el parámetro tiempo de ejecución, si bien las ideas desarrolladas son fácilmente aplicables a otro tipo de recursos.
Para cadaproblema determinaremos un medida N de su tamaño (por número de datos) e intentaremos hallar respuestas en función de dicho N.
El concepto exacto que mide N depende de la naturaleza del problema.Así, para un vector se suele utilizar como N su longitud; para una matriz, el número de elementos que la componen; para un grafo, puede ser el número de nodos (a veces es mas importante considerar elnúmero de arcos, dependiendo del tipo de problema a resolver), en un archivo se suele usar el número de registros, etc.
Es imposible dar una regla general, pues cada problema tiene su propia lógica decoste.
Tiempo de Ejecución
Una medida que suele ser útil conocer es el tiempo de ejecución de un programa 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 cada instrucción.
Así, un trozo sencillo de programa...
tracking img