Primero, debemos elaborar un poco más. Primero, supongo que la recurrencia se derivó de la formulación de una función de crecimiento para su algoritmo. Desea determinar la complejidad temporal del algoritmo.
Entonces, hay muchas maneras de determinar el comportamiento asintótico de [matemáticas] T (n) [/ matemáticas]. La más fácil es aplicar el teorema del maestro. Hay varias versiones de este teorema, pero puedo usar la versión más simple aquí (la que se describe aquí, diapositiva 3: http://cse.unl.edu/~choueiry/S06…). Suponiendo que [math] c [/ math] no es parte de la entrada y es una constante, entonces [math] c \ in \ Theta (1) [/ math].
Así que ahora está tratando de determinar las asintóticas para [matemáticas] T (n) = T (n / 2) + 1 [/ matemáticas], donde [matemáticas] T (1) = 2 [/ matemáticas]. Dado que [matemática] a = 1 [/ matemática], [matemática] b = 2 [/ matemática] y [matemática] d = 0, [/ matemática] [matemática] a = b ^ d \ Rightarrow 1 = 2 ^ 0 [/ math], usamos el caso 2 del Teorema del Maestro aquí y determinamos que [math] T (n) \ in \ Theta (\ log {n}) [/ math].
- ¿Los estudiantes de pregrado de CS estadounidenses entienden todas las matemáticas en sus libros de texto conceptualmente?
- ¿Cuántos niveles habrá en un árbol completamente binario si tiene n número de nodos?
- ¿En qué punto Watson podrá crear sus propios algoritmos?
- ¿Cuál es el propósito de construir un árbol de expansión mínimo?
- ¿Es posible la generación de números aleatorios verdaderos?
Por lo tanto, la complejidad de tiempo (peor caso) para este algoritmo es [matemática] \ Theta (\ log {n}) [/ matemática].