Vitesse de programme

cs_noumian Messages postés 49 Date d'inscription samedi 2 avril 2005 Statut Membre Dernière intervention 3 décembre 2008 - 6 mai 2007 à 20:41
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 7 mai 2007 à 09:26
bonjour
j'ai A,B,C qui sont des boucles quelconques.
parmi ces 2 cas ci-dessous, quel est l'algorithmes le plus rapide?
cas 1)

for (i = 0; i < N; i++)

{

      A;

      B;

      C;

}

 

cas 2)

for (i = 0; i < N; i++)

{

      A;

}

for (i = 0; i < N; i++)

{

      B;

}

for (i = 0; i < N; i++)

{

      C;

}

ouais man

5 réponses

goast_tu Messages postés 212 Date d'inscription dimanche 3 avril 2005 Statut Membre Dernière intervention 28 mai 2011 2
6 mai 2007 à 21:33
bon tt d'abord ces 2 possibilitées ne sont pas equivalentes et ensuit
il n'y a pas de grande difference. dans le deuxiem cas il y a 2*N
additions en plus mais c'est negligeable.

<hr size="2" width="100%" />Trafic web gratuit!!!
0
Galmiza Messages postés 573 Date d'inscription samedi 16 novembre 2002 Statut Membre Dernière intervention 9 avril 2008 1
6 mai 2007 à 21:39
La 1 est plus rapide car tu économises 2N incrémentations et 2N branchements avec conditions par rapport à la 2.
0
emmatopiak Messages postés 149 Date d'inscription mercredi 28 mars 2007 Statut Membre Dernière intervention 17 mai 2007 2
6 mai 2007 à 22:04
Salut,

Ca dépend aussi car si A peut être exécuté avec toute la mémoire dans le cache puis pareil pour B et pareil pour C ça ira plus vite que si A, B et C demandent trop de mémoire et que ça tient pas dans le cache et qu'il faut à chaque fois recharger tout.

@++

Une autruche ne se cuit pas aux petits lardons.
0
Galmiza Messages postés 573 Date d'inscription samedi 16 novembre 2002 Statut Membre Dernière intervention 9 avril 2008 1
6 mai 2007 à 22:09
Exact, donc dans ce cas,

for (i = 0; i < N; i++)
{
      { A; }
      { B; }
      { C; }
}

est le plus rapide.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
7 mai 2007 à 09:26
Tant que faire se peut, c'est la boucle tendant vers 0 qui est la plus rapide.

ciao...
BruNews, MVP VC++
0
Rejoignez-nous