Usualmente, para iterar un código N veces se hace
for ($a = 0; $a < N; $a++) {
pero pensandolo un poco, este código se puede optimizar, ya que la segunda y tercer sentencia se pueden juntar, con lo que llegamos a lo siguiente
for ($a = -1; ++$a < N;) {
También se podría encarar de esta forma
$a = 0;
while (++$a < N) {
pero la anterior parece (apenas) mejor, en la práctica. Si bien esta optimización de código mejor muy poco la velocidad, hay que tener en cuenta que es una de las iteraciones más comunes y se puede repetir mucho a lo largo de nuestro trabajo.
Ver ejemplo
domingo, 26 de agosto de 2007
Suscribirse a:
Enviar comentarios (Atom)
2 comentarios:
Está muy bien la comparación aunque hay un comentario importante. En el caso de for ($i = 0; ++$i < N;) hay que tener en cuenta que $i inicialmente nunca tendrá valor cero, sino que arrancará en uno, cosa que para adaptar a un for común sería: for ($i = -1; ++$i < N;). Es un simple comentario que me parece que ayudará a quien lea, ya que esta haciendo un iteración de menos y en cuentas de milesegundos suma ;). Otra es que es mucho mejor usar ++$i que usar $i++ en un for tradicional.
PD: Por que usas $a para representar a la $iteracion? (de curioso nomás :p)
Saludos y buen blog!
Es cierto, nicolaspar... me equivoqué ahí, edito el post para que quede bien.
Usé $a porque me pareció más corto y cómodo para hacer pruebas =)
Gracias por tu comentario
Publicar un comentario