Estoy analizando algunos tiempos de ejecución de diferentes bucles for, y a medida que obtengo más conocimiento, tengo curiosidad por comprender este problema que todavía tengo que descubrir. Tengo este ejercicio llamado "Cuántas estrellas están impresas":
for (int i = N; i > 1; i = i/2) System.out.println("*");
Las respuestas para elegir es
A: ~log N
B: ~N
C: ~N log N
D: ~0.5N^2
Entonces la respuesta debería ser A y estoy de acuerdo con eso, pero por otro lado ... Digamos N = 500
qué sería Log N
entonces. Sería 2.7. Entonces, ¿qué pasa si decimos eso N=500
en nuestro ejercicio anterior? ¿Eso definitivamente imprimiría más estrellas han 2.7? ¿Cómo se relaciona eso?
Porque tiene sentido decir que si el ciclo for tuviera este aspecto:
for (int i = 0; i < N; i++)
imprimiría N
estrellas.
Espero encontrar una explicación para esto aquí, tal vez estoy interpretando mal todas estas cosas y pensando mal. Gracias por adelantado.