Adgoritmos

Solo disponible en BuenasTareas
  • Páginas : 12 (2793 palabras )
  • Descarga(s) : 0
  • Publicado : 6 de noviembre de 2011
Leer documento completo
Vista previa del texto
Algoritmo

Los diagramas de flujo sirven para representar algoritmos de manera gráfica.
En matemáticas, ciencias de la computación y disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus y éste a su vez del matemático persa Al Juarismi[1] ) es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediantepasos 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 solución. Los algoritmos son el objeto de estudio de la algoritmia.[]
En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, quemuestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón. Algunos ejemplos en matemática son el algoritmo de la división para calcular el cociente de dos números, el algoritmo de Euclides para obtener el máximo común divisor de dos enteros positivos, o el método de Gauss para resolver un sistema lineal de ecuaciones.
Tipos de algoritmos según sufunción
* Algoritmo de ordenamiento
* Algoritmo de búsqueda
Técnicas de diseño de algoritmos
* Algoritmos voraces (greedy): seleccionan los elementos más prometedores del conjunto de candidatos hasta encontrar una solución. En la mayoría de los casos la solución no es óptima.
* Algoritmos paralelos: permiten la división de un problema en subproblemas de forma que se puedan ejecutarde forma simultánea en varios procesadores.
* Algoritmos probabilísticos: algunos de los pasos de este tipo de algoritmos están en función de valores pseudoaleatorios.
* Algoritmos determinísticos: el comportamiento del algoritmo es lineal: cada paso del algoritmo tiene únicamente un paso sucesor y otro antecesor.
* Algoritmos no determinísticos: el comportamiento del algoritmo tieneforma de árbol y a cada paso del algoritmo puede bifurcarse a cualquier número de pasos inmediatamente posteriores, además todas las ramas se ejecutan simultáneamente.
* Divide y vencerás: dividen el problema en subconjuntos disjuntos obteniendo una solución de cada uno de ellos para después unirlas, logrando así la solución al problema completo.
* Metaheurísticas: encuentran solucionesaproximadas (no óptimas) a problemas basándose en un conocimiento anterior (a veces llamado experiencia) de los mismos.
* Programación dinámica: intenta resolver problemas disminuyendo su coste computacional aumentando el coste espacial.
* Ramificación y acotación: se basa en la construcción de las soluciones al problema mediante un árbol implícito que se recorre de forma controladaencontrando las mejores soluciones.
* Vuelta atrás (backtracking): se construye el espacio de soluciones del problema en un árbol que se examina completamente, almacenando las soluciones menos costosas.
Ejemplo de algoritmo
El problema consiste en encontrar el máximo de un conjunto de números. Para un ejemplo más complejo véase Algoritmo de Euclides.
Descripción de alto nivel
Dado un conjuntofinito C de números, se tiene el problema de encontrar el número más grande. Sin pérdida de generalidad se puede asumir que dicho conjunto no es vacío y que sus elementos están numerados como .
Es decir, dado un conjunto se pide encontrar m tal que para todo elemento x que pertenece al conjunto C.
Para encontrar el elemento máximo, se asume que el primer elemento (c0) es el máximo; luego, serecorre el conjunto y se compara cada valor con el valor del máximo número encontrado hasta ese momento. En el caso que un elemento sea mayor que el máximo, se asigna su valor al máximo. Cuando se termina de recorrer la lista, el máximo número que se ha encontrado es el máximo de todo el conjunto.

Manejo de sistema operativo
Ubuntu es un sistema operativo[5] [6] mantenido por Canonical y la...
tracking img