Någon som vet hur jag skall få till en fördröjning på minst 20 clocks vid jämförelse. Är du ute efter att jämföra hur lång tid olika algoritmer tar? Det var för att jämföra olika sorteringsalgoritmer men ingen fick vara under 20 clocks mättid.Sortering
Överlagrar dessa operatorer
< och >
sorterar arrayer med de vanliga algoritmerna och arrayerna är på 1000 - 8000 element
en tanke var att göra på detta viset
bool MyClass::operator<(const MyClass &mc) const
{
clock_t endwait = 20;
while (clock() < endwait) {}
return getTal() < mc.getTal();
}
Sv: Sortering
Det enklaste är att köra dem efter varandra 100 gånger och sen dela svaret med 100 istället.
Beroende på vad du ska göra kan det vara ännu bättre att räkna antalet jämförelser.
Ytterligare en variant är att låta en tråd sova. Vilket operativsystem kör du?
Den varianten du kör med är inget vidare eftersom datorn kommer gå 100% i loopen, men det funkar om du gör något i stil med:
clock_t endwait = clock() + 20;
while (clock()<endwait) {}Sv:Sortering
Jag la in en tom for loop med fast värde.
Fick senare ändra för algoritmen quicksort.
Inte så snyggt men funkis för laborationen på skolan.
Thomas