Sunteți pe pagina 1din 3

ALGORITMOS

Algoritmos

En matemticas, ciencias de la computacin y disciplinas relacionadas, un


algoritmo es un conjunto de instrucciones o reglas bien definidas, ordenadas
y finitas que permite realizar una actividad mediante pasos sucesivos que
no generen dudas a quien deba realizar dicha actividad. Dados un estado
inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado
final y se obtiene una solucin.
Existen dos tipos y son llamados as por su naturaleza:
Cualitativos: Son aquellos en los que se describen los pasos utilizando
palabras.
Cuantitativos: Son aquellos en los que se utilizan clculos numricos para
definir los pasos del proceso.
Tipos de Lenguajes Algortmicos
Grficos: Es la representacin grfica de las operaciones que realiza un
algoritmo (diagrama de flujo).
No Grficos: Representa en forma descriptiva las operaciones que debe
realizar un algoritmo
Tipos de algoritmos segn su funcin
Algoritmo de ordenamiento
En computacin y matemticas un algoritmo de ordenamiento recursivo es
un algoritmo que pone elementos de una lista o un vector en una secuencia
dada por una relacin de orden, es decir, el resultado de salida ha de ser
una permutacin de la entrada que satisfaga la relacin de orden dada. Las
relaciones de orden ms usadas son el orden numrico y el orden
lexicogrfico. Ordenamientos eficientes son importantes para optimizar el
uso de otros algoritmos (como los de bsqueda y fusin) que requieren
listas ordenadas para una ejecucin rpida. Tambin es til para poner
datos en forma cannica y para generar resultados legibles por humanos.
Algoritmo de bsqueda
Un algoritmo de bsqueda es aquel que est diseado para localizar un
elemento con ciertas propiedades dentro de una estructura de datos; por
ejemplo, ubicar el registro correspondiente a cierta persona en una base de
datos, o el mejor movimiento en una partida de ajedrez.

La variante ms simple del problema es la bsqueda de un nmero en un


vector.

Complejidad
La teora de la complejidad computacional es la rama de la teora de la
computacin que estudia, de manera terica, la complejidad inherente a la
resolucin de un problema computable. Los recursos comnmente
estudiados son el tiempo (mediante una aproximacin al nmero y tipo de
pasos de ejecucin de un algoritmo para resolver un problema) y el espacio
(mediante una aproximacin a la cantidad de memoria utilizada para
resolver un problema). Se pueden estudiar igualmente otros parmetros,
tales como el nmero de procesadores necesarios para resolver el problema
en paralelo. La teora de la complejidad difiere de la teora de la
computabilidad en que sta se ocupa de la factibilidad de expresar
problemas como algoritmos efectivos sin tomar en cuenta los recursos
necesarios para ello.

Los problemas que tienen una solucin con orden de complejidad lineal son
los problemas que se resuelven en un tiempo que se relaciona linealmente
con su tamao.

Hoy en da las computadoras resuelven problemas mediante algoritmos que


tienen como mximo una complejidad o coste computacional polinmico, es
decir, la relacin entre el tamao del problema y su tiempo de ejecucin es
polinmica. stos son problemas agrupados en la clase P. Los problemas que
no pueden ser resueltos por nuestras computadoras (las cuales son
Mquinas Determinsticas), que en general poseen costes factorial o
combinatorio pero que podran ser procesados por una mquina nodeterminista, estn agrupados en la clase NP. Estos problemas no tienen
una solucin prctica, es decir, una mquina determinstica (como una
computadora actual) no puede resolverlos en un tiempo razonable.
Clases de complejidad
Los problemas de decisin se clasifican en conjuntos de complejidad
comparable llamados clases de complejidad.

La clase de complejidad P es el conjunto de los problemas de decisin que


pueden ser resueltos en una mquina determinista en tiempo polinmico, lo
que corresponde intuitivamente a problemas que pueden ser resueltos an
en el peor de sus casos.

La clase de complejidad NP es el conjunto de los problemas de decisin que


pueden ser resueltos por una mquina no determinista en tiempo
polinmico. Esta clase contiene muchos problemas que se desean resolver
en la prctica, incluyendo el problema de satisfacibilidad booleana y el
problema del viajante, un camino Hamiltoniano para recorrer todos los
vrtices una sola vez. Todos los problemas de esta clase tienen la propiedad
de que su solucin puede ser verificada efectivamente

S-ar putea să vă placă și