#P2 ¿Qué es un paradigma de programación?
Un paradigma de programación es un enfoque para resolver problemas con programación, como la programación orientada a objetos, funcional, o imperativa.
¿En qué se basa la programación orientada a objetos?
Consiste en organizar el código en "objetos" que representan entidades con propiedades (atributos) y comportamientos (métodos), facilitando la reutilización y la organización del código en partes manejables.
¿Cuál es la diferencia entre recursividad e iteración, y cómo se relaciona esto con la notación big 𝑂?
La recursividad resuelve problemas llamando repetidamente a una función, mientras que la iteración usa bucles. Su eficiencia se mide con notación Big O; la recursividad puede ser menos eficiente debido al costo de las llamadas.
Explicar la diferencia de rendimiento entre 𝑂(1) y 𝑂(𝑛)
𝑂(1) es tiempo constante: el rendimiento no cambia con el tamaño del problema. 𝑂(𝑛) es tiempo lineal: el tiempo aumenta proporcionalmente al tamaño del problema.
¿Cómo se calcula el orden en un programa que funciona por etapas?
Sumando las complejidades de cada etapa; la complejidad total es dominada por la etapa de mayor orden.
¿Cómo se puede determinar la complejidad temporal de un algoritmo recursivo?
Para determinar la complejidad temporal de un algoritmo recursivo, se escribe una relación de recurrencia que describe el tiempo que toma el algoritmo en función de su tamaño de entrada. Luego, esta relación se resuelve usando métodos matemáticos (como el Teorema Maestro) para encontrar su notación Big O, que representa la eficiencia del algoritmo en el peor caso.