Está en la página 1de 4

1. ¿Qué es un algoritmo?

Un Algoritmo es una serie ordenada de instrucciones, pasos o procesos


que llevan a la solución de un determinado problema. Los hay tan sencillos
y cotidianos como seguir la receta del médico, abrir una puerta, lavarse las
manos, etc. hasta los que conducen a la solución de problemas muy
complejos.
2. Describa las siguientes propiedades que por lo general tiene un algoritmo:
entrada, salida, precisión, determinismo, carácter finito, corrección y
generalidad.
Entrada: Lectura de datos dada por el usuario.
Salida: Resultado obtenido de las operaciones realizadas en el algoritmo.
Determinismo: Resultados parciales antes de concluir el proceso de
resolución de problemas.
Carácter finito: El ciclo de ejecución debe ser repetitivo pero debe terminar
en algún momento.
Corrección: Obtener al final un resultado verdadero; es decir; que la
respuesta obtenida cumpla satisfactoriamente.
Generalidad: Las entradas dadas se deben procesar por el algoritmo para
obtener los resultados deseados.
3. ¿Qué es el seguimiento (o rastreo) de un algoritmo?
Es una prueba de escritorio, se realiza para detectar si existen errores
4. ¿Cuáles son las ventajas del seudocódigo sobre el texto común al escribir
un algoritmo?
Para el entendimiento general del procedimiento pues el pseudocódigo es
preciso, estructurado y universal.
5. ¿Cómo se relacionan los algoritmos con las funciones del seudocódigo?
Estructura los pasos en un orden entendible sin establecer necesariamente
el código real.
6. ¿A qué se refiere el “análisis del algoritmo”?
El análisis de algoritmos es una parte importante de la Teoría
de complejidad computacional más amplia, que provee estimaciones
teóricas para los recursos que necesita cualquier algoritmo que resuelva un
problema computacional dado. Estas estimaciones resultan ser bastante
útiles en la búsqueda de algoritmos eficientes.
7. ¿Qué es el tiempo del peor caso de un algoritmo?
se refiere a la situación inicial de los datos que genera una ejecución del
algoritmo con una menor complejidad computacional.
8. ¿Qué es el tiempo del mejor caso de un algoritmo?
se refiere a la situación inicial de los datos que genera una ejecución del
algoritmo con una complejidad computacional mayor.
9. ¿Qué es el tiempo del caso promedio de un algoritmo?
la situación inicial de los datos no sigue ningún patrón preestablecido que
aporte ventajas o desventajas. Se puede considerar, por tanto, la situación
típica de ejecución del algoritmo.
10. Defina f (n) = O (g(n)). ¿Cómo se llama esta notación?
La notación-O (big o), sirve para dar una cota superior para el crecimiento
de nuestro algoritmo, esta afirma que hay un punto n0, tal que para los
valores n después de este punto, el valor múltiplo de la función g(n) supera
o está en el mismo orden que nuestro algoritmo f(n), es decir que: Existe un
c y un n tal que 0 ≤ f(n) ≤ cg(n) para todo n0 ≤ n.
Y lo representamos como: f(n) = O(g(n)). Matemáticamente podemos acotar
f(n) con un orden muy superior, pero no hacemos eso, porque queremos
saber cuánto tardará nuestro algoritmo con el cálculo más justo que
podamos.
11. Dé una interpretación intuitiva de cómo se relacionan f y g si f (n) = O (g(n)).
Todo lo que se concluye es que, excepto por un factor constante y un
número finito de excepciones, f está acotada arriba por g, de manera que g
crece al menos tan rápido como f.
Existe un c y un n tal que 0 ≤ f(n) ≤ cg(n) para todo n0 ≤ n .7 Y lo
representamos como: f(n) = O(g(n)
12. Defina f (n) = Ω(g(n)). ¿Cómo se llama esta notación?
La notación-Ω (notación omega), sirve para dar una cota inferior para el
crecimiento de nuestro algoritmo, esta afirma que hay un punto n0, tal que
para los valores n después de este punto, el valor múltiplo de la función g(n)
está en un orden inferior o está en el mismo orden que nuestro algoritmo
f(n).
13. Dé una interpretación intuitiva de cómo se relacionan f y g si f (n) = Ω(g(n)).
Si, excepto por un factor constante y un número finito de excepciones,
f está acotada por abajo por g. También se dice que g es una cota inferior
asintótica para f.
Existe un c y un n tal que 0 ≤ cg(n) ≤ f(n) para todo n0 ≤ n.
Y lo representamos como: f(n) = Ω (g(n)).
14. Defina f (n) = Θ(g(n)). ¿Cómo se llama esta notación?
La notación-Θ (notación theta), sirve para dar una cota superior e inferior
para el crecimiento de nuestro algoritmo, esta afirma que hay un punto n0,
tal que para los valores n después de este punto, un valor múltiplo de la
función g(n) está en el mismo orden que nuestro algoritmo f(n), es decir
que: Existe un c1 , c2 y un n tal que 0 ≤ c1g(n) ≤ f(n) ≤ c2g(n) para todo n0
≤ n . Y lo representamos como: f(n) = Θ (g(n)).
15. Dé una interpretación intuitiva de cómo se relacionan f y g si f (n) = Θ(g(n)).
todo lo que se concluye es que, excepto por un factor constante y un
número finito de excepciones, f está acotada arriba por g, de manera que g
crece al menos tan rápido como f.
Existe un c1, c2 y un n tal que 0 ≤ c1g(n) ≤ f(n) ≤ c2g(n) para todo n0 ≤ n.
Y lo representamos como: f(n) = Θ (g(n)).
16. ¿Qué es un algoritmo recursivo?
Un algoritmo recursivo es un algoritmo que expresa la solución de un
problema en términos de una llamada a sí mismo. La llamada a sí mismo se
conoce como llamada recursiva o recurrente.
Generalmente, si la primera llamada al subprograma se plantea sobre un
problema de tamaño u orden N, cada nueva ejecución recurrente del mismo
se planteará sobre problemas, de igual naturaleza que el original, pero de
un tamaño menor que N. De esta forma, al ir reduciendo progresivamente la
complejidad del problema que resolver, llegará un momento en que su
resolución sea más o menos trivial (o, al menos, suficientemente manejable
como para resolverlo de forma no recursiva). En esa situación diremos que
estamos ante un caso base de la recursividad.

17. ¿Qué es una función recursiva?


En lógica matemática y computación, las funciones recursivas o también
conocidas como funciones recursivas-μ son una clase de funciones de los
números naturales en los números naturales que son «computables» en un
sentido intuitivo.
18. Dé un ejemplo de una función recursiva.
Un ejemplo de una función recursiva sin retorno, es el ejemplo de cuenta
regresiva hasta cero a partir de un número:
19. ¿Cuál es la base de una función recursiva?
Dentro de una función recursiva suelen distinguirse dos partes: - Los
casos base: Son aquellos que para su solución no requieren utilizar
la función que se está definiendo. - Los casos recursivos: Son aquellos que
sí que requieren utilizar la función que se está definiendo.
20. ¿Por qué toda función recursiva debe tener un caso base?
Un caso base es típicamente un problema que es lo suficientemente
pequeño como para resolverlo directamente.
Para obedecer la segunda ley, debemos organizar un cambio de estado
que mueva el algoritmo hacia el caso base. Un cambio de estado significa
que se modifican algunos datos que el algoritmo está usando. Por lo
general, los datos que representan nuestro problema se hacen más
pequeños de alguna manera.

También podría gustarte