Szerző Téma: Melyik a gyorsabb ?  (Megtekintve 704 alkalommal)

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
Melyik a gyorsabb ?
« Dátum: 2011. január 09. - 16:15:00 »
0 Show voters
Sziasztok.
Ide rakhattok olyan teszteket, amiben teszteltétek, hogy melyik funkció a gyorsabb.
Kezdem is:
if vs else if vs switch
Lefuttattam száz miliószor mind a hármat.
Time #1:
Switch Time: 3505
If Time: 8061
Else If Time: 8075
Time #2:
Switch Time: 3527
If Time: 8079
Else If Time: 8073
Time #3:
Switch Time: 3500
If Time: 8092
Else If Time: 8083
Time #4:
Switch Time: 3487
If Time: 8095
Else If Time: 8059
Time #5:
Switch Time: 3527
If Time: 8072
Else If Time: 8074
Tesztkód:
 

#include <a_samp>
new
global_string[43],
CurrCount; // Ezt azért hozom létre globálisan, hogy ne legyen eltérés a tesztekben...
public OnFilterScriptInit()
{
CurrCount = GetTickCount();
for(new i; i < 100000000; i++)
{
switch(i)
{
    case 15698895: format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
    case 55669: format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
    case 66689: format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
    case 69566863: format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
    case 95888828: format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
}
}
printf(\"Switch Time: %d\", GetTickCount() - CurrCount);
    CurrCount = GetTickCount();
for(new i; i < 100000000; i++)
{
if(i == 15698895) format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
if(i == 55669) format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
if(i == 66689) format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
if(i == 69566863) format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
if(i == 95888828) format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
}
printf(\"If Time: %d\", GetTickCount() - CurrCount);
    CurrCount = GetTickCount();
for(new i; i < 100000000; i++)
{
if(i == 15698895) format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
else if(i == 55669) format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
else if(i == 66689) format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
else if(i == 69566863) format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
else if(i == 95888828) format(global_string, sizeof(global_string), \"Na most megtudjuk, hogy melyik a gyorsabb :)\");
}
printf(\"Else If Time: %d\", GetTickCount() - CurrCount);
return 1;
}
« Utoljára szerkesztve: 2011. január 09. - 21:52:54 írta kurta999 »

Melyik a gyorsabb ?
« Válasz #1 Dátum: 2011. január 09. - 18:52:02 »
0 Show voters
Dehát mért csalódtál?Teljesen érthetõ és egyértelmû dolog volt szerintem,ha a mûködést nézzük.

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
Melyik a gyorsabb ?
« Válasz #2 Dátum: 2011. január 09. - 18:53:59 »
0 Show voters
Melyik

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
Melyik a gyorsabb ?
« Válasz #3 Dátum: 2011. január 09. - 21:39:11 »
0 Show voters
Felújítva.
« Utoljára szerkesztve: 2011. január 09. - 21:53:11 írta kurta999 »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal