Diferencia entre revisiones de «Estructuras de datos y algoritmos»

Contenido eliminado Contenido añadido
Sin resumen de edición
Sin resumen de edición
 
Línea 13:
# [[Estructura de Datos y Algoritmos/Programación Orientada a Objetos|Programación Orientada a Objetos]]
 
== ReferenciaDocumentación ==
=== Algoritmos ===
* '''[http[w://es.wikipedia.org/wiki/:Algoritmo |Algoritmos]]'''
* '''[http[w://es.wikipedia.org/wiki/Pseudoc%C3%B3digo :Pseudocódigo|Pseudocódigo]]'''
* '''[http[w://es.wikipedia.org/wiki/:Diagramas_de_flujo |Diagramas de flujo]]'''
 
=== Técnicas de diseño de algoritmos ===
* '''[http[w://es.wikipedia.org/wiki/:Algoritmo_voraz |Algoritmos voraces]]''': 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.
* '''[http[w://es.wikipedia.org/wiki/:Algoritmos_paralelos |Algoritmos paralelos]]''': permiten la división de un problema en subproblemas de forma que se puedan ejecutar de forma simultánea en varios procesadores.
* '''[http[w://es.wikipedia.org/wiki/Algoritmo_probabil%C3%ADstico :Algoritmo_probabilístico|Algoritmos probabilísticos]]''': algunos de los pasos de este tipo de algoritmos están en función de valores pseudoaleatorios.
* '''[http[w://es.wikipedia.org/wiki/Algoritmo_determin%C3%ADstico :Algoritmo_determinístico|Algoritmos determinísticos]]''': el comportamiento del algoritmo es lineal: cada paso del algoritmo tiene únicamente un paso sucesor y otro antecesor.
* '''[http[w://es.wikipedia.org/wiki/Algoritmo_no_determin%C3%ADstico :Algoritmo_no_determinístico|Algoritmos no determinísticos]]''': el comportamiento del algoritmo tiene forma 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.
* '''[http[w://es.wikipedia.org/wiki/Divide_y_vencer%C3%A1s :Divide_y_vencerás|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.
* '''[http[w://es.wikipedia.org/wiki/Metaheur%C3%ADsticas :Metaheurísticas|Metaheurísticas]]''': encuentran soluciones aproximadas (no óptimas) a problemas basándose en un conocimiento anterior (a veces llamado experiencia) de los mismos.
* '''[http[w://es.wikipedia.org/wiki/Programaci%C3%B3n_din%C3%A1mica_:Programación_dinámica_(computaci%C3%B3ncomputaciónn) |Programación dinámica]]''': intenta resolver problemas disminuyendo su coste computacional aumentando el coste espacial.
* '''[http[w://es.wikipedia.org/wiki/Ramificaci%C3%B3n_y_acotaci%C3%B3n :Ramificación_y_acotación|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 controlada encontrando las mejores soluciones.
* '''[http[w://es.wikipedia.org/wiki/Vuelta_atr%C3%A1s :Vuelta_atrás|Vuelta atrás]]''': se construye el espacio de soluciones del problema en un árbol que se examina completamente, almacenando las soluciones menos costosas.
 
=== Estructuras ===
*'''[[w:es:Array dinámico| Array dinámicos]]'''
*'''[[w:es:Lista (informática)|Listas]]'''
*'''[[w:es:Pila (informática)|Pilas]]'''
*'''[[w:es:Cola (informática)|Colas]]'''
*'''[[w:es:Bicola|Bicola]]'''
*'''[[w:es:Cola circular|Colas circulares]]'''
*'''[[w:es:First in, first out|FIFO]]'''
*'''[[w:es:Last in, first out|LIFO]]'''
*'''[[w:es:First in, never out|FINO]]'''
*'''[[w:es:Tabla hash|Tabla hash]]'''
*'''[[w:es:Árbol (informática)|Arboles]]'''
 
=== Algoritmos de busquedas ===
*[[w:es:Búsqueda de fuerza bruta|Búsqueda de fuerza bruta]]
*[[w:es:Búsqueda en anchura|Búsqueda en anchura]]
*[[w:es:Búsqueda en profundidad]]
 
==Wikilibros relacionados==