Escrito el 01 de Junio de 2009 en Español y con un tamaño de 11.522 bytes.
Qué es un algoritmo? Un algoritmo es un conjunto finito de instrucciones precisas que realizan una tarea, la cual, dado un estado inicial, culminará por arrojar un estado final reconocible. ¿ Cuá l es el orden de ejecución de un algoritmo? El orden de ejecución será casi siempre crítico para su funcionamiento en general, se asume que las instrucciones se enumeran explícitamente, y deben ejecutarse desde arriba hacia abajo. ¿ Mencione ejemplos de algoritmos? *Ios instructivos (manuales de usuario) *el algoritmo de Euclides para calcular el má ximo comú n divisor de dos enteros positivos, *el método de Gauss para resolver un Sistema lineal de ecuaciones. ¿ En que consiste la má quina de Turing? Es un autómata que se mueve sobre una secuencia lineal de datos. en cada instante, la máquina puede leer un único dato de la secuencia (generalmente un carácter) y realizar ciertas acciones en base a una tabla que tiene en cuenta su estado actual (interno) y el último dato leído. ¿ Qué acciones puede realizar? Puede realizar, la posibilidad de escribir nuevos datos en la secuencia, recorrer la secuencia en ambos sentidos y cambiar de estado dentro de un conjunto finito de estados posibles. ¿Cómo especificar un algoritmo? Para especificar un algoritmo de forma tal que su implementación sea correcta, es decir, que haga exactamente lo que se espera de él y que, a la vez, pueda implementarse con diferentes lenguajes o herramientas, un método consiste en definir sus entradas y salidas, con sus correspondientes precondiciones y poscondiciones. ¿ Cuá l es la historia del algoritmo? Proviene del nombre el matemático llamado Muhammad ibn Musa al-Khwarizmi, Su trabajo consistió en simplificar la matemática a punto tal que pudieran ser comprendidas y aplicadas por un mayor número de personas. También estudió la manera de reducir las operaciones que formaban el cálculo, de la palabra algorismo ¿Cuá les son los requisitos de un algoritmo y quien las séñ alo? El científico de computación donald Knuth, Carácter finito, precisión, entrada, salida y eficacia. ¿ En que consiste carácter finito? Un algoritmo siempre debe terminar después de un númeró finito de paso. ¿ En que consiste precisión? Cada paso de un algoritmo debe estar precisamente definido; las operaciones a llevar a cabo deben ser especificadas de manera rigurosa y no ambigua para cada caso. ¿ En que consiste la entrada? Un algoritmo tiene cero o má s entradas: cantidades que le son dadas antes de que el algoritmo comience, o dinámicamente mientras el algoritmo corre. Estas entradas son tomadas de conjuntos especificas de objetos. ¿ En que consiste la salida? Un algoritmo tiene una o má s salidas: cantidades que tienen una relación especí fica con la entrada. ¿ En que consiste la eficacia? También se espera que un algoritmo sea eficaz, en el sentido de que todas las operaciones a realizar en un algoritmo deben ser suficientemente básicas como para que en principio puedan ser hechas de manera exacta y en un tiempo finito por un hombre usando lápiz y papel. ¿ Qué calcula un algoritmo? Como cualquier conjunto finito es numerable, y cualquier conjunto numerable se puede expresar en términos del conjunto de los números naturales (infinito, pero numerable, de hecho no existe otro conjunto más grande que sea también numerable), en esencia, todo algoritmo calcula a funciones definidas en los números naturales. ¿ Có mo se les llama a las funciones que tengan un algoritmo? Se denomina función computable (parcialmente computable o totalmente computable depende del grado de definicion de la función en cuestión)
¿ Cuá les son las funciones totalmente computables? Un algoritmo que calcula a una función total siempre devuelve un resultado para todo valor, y que al igual que las funciones parciales, éste debe coincidir exactamente con el valor que devuelve la función a la que calcula. ¿ Có mo pueden ser expresados los algoritmos? Lenguaje natural, pseudocódigo, Diagramas de flujo y Lenguajes de programación.
¿Cuáles son los niveles para hacer la descripció n de un algoritmo? Descripción de alto nivel, Descripción formal, Implementación. ¿ En que consisten cada uno de los anteriores? Descripción de alto nivel. Se establece el problema, se selecciona un modelo matemático y se explica el algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles. Descripció n formal. Se usa pseudocódigo para describir la secuencia de pasos que encuentran la solució n. Implementación. Se muestra el algoritmo expresado en un lenguaje de programación especifico o algún objeto capaz de llevar a cabo instrucciones. ¿que es un diagrama de flujo? Un diagrama de flujo es una representación gráfica de un algoritmo o de una parte del mismo. ¿Nombra Ios simbolos del diagrama de flujo? terminal, proceso, decisión, entrada/salida, conector y línea de flujo. ¿ Qué es el pseudocó digo? es ún lenguaje artificial e informal que ayuda a los programadores a desarrollar algoritmos. ¿ Segú n su funció n cuales son los tipos de algoritmos? Algoritmo de ordenamiento Algoritmo de búsqueda. ¿ De qué se encarga el algoritmo de ordenamiento? Es un algoritmo que pone elementos de una lista o un vector en una secuencia dada por una relación de orden. ¿ Cuá les son las relaciones de orden má s usadas? son el orden numerico y el orden lexicografico ¿De qué forma se pueden clasificar los algoritmos de ordenamiento? La má s común es clasificar según el lugar donde se realice la ordenación a. Algorittnos de ordenamiento interno: en la memoria del ordenador. b. Algoritmos de ordenamiento externo: en un lugar externo como un disco duro. ¿ Clasificació n del algó ritmo de ordenamiento? Algoritmos de ordenamiento interno, Algoritmos de ordenamiento externo, algoritmos de ordenación natural, algoritmos de ordenación no natural. ¿Qué es el algoritmo de bú squeda? Es aquel que está diseñado para localizar un elemento concreto dentro de una estructura de datos. ¿Menciona alguna de las técnicas de algoritmos? Algoritmos voraces (greedy),, Algoritmos paralelos,, Algoritmos probabilísticos,, Algoritmos deterministico,, Algoritmos no deterministico ¿Qué algoritmo se dice que tiene comportamiento lineal? Algoritmo deterrninistico ¿Cuá l es la forma en que trabaja el algoritmo de Divide y Vencerás? Divide 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. ¿En que se basa el algoritmo de Ramificació n y acotación? Se basa en la construcció n de las soluciones al problema mediante un á rbol implí cito que se retorre de forma controlada encontrando las mejores soluciones. ¿Cuándo hablamos de seleccionar los elementos más prometedores del conjunto de candiatos hasta encontrar una solución hablamos de?
Algoritmos voraces (greedy) . ¿los algoritmos de Metaheurísticas nos hablan de? Encontrar soluciones aproximadas (no ó ptimas) a problemas basándose en un conocimiento anterior (a veces llamado experiencia) de los mismos. ¿Cuá l es el algoritmo que intenta resolver problemas disminuyendo su coste computacional aumentando el coste espacial? Programación dinámica ¿Cómo calculan la medida de eficiencia de los algoritmos? Se suelen estudiar los recursos (memoria y tiempo) que consume el algoritmo ¿Para qué se ha desarrollado el análisis de algoritmos? El análisis de algoritmos se ha desarrollado para obtener valores que de alguna forma indiquen (o especifiquen) la evolución del gasto de tiempo y memoria en función del tamañ o de los valores de entrada. ¿Menciona una forma de plasmar o codIficar un algoritmo? Es escribitlo en pseudocódigo o utilizar un lenguaje muy simple tal como Léxico, cuyos códigos pueden estar en el idioma del programador