Time kompleksitet er et mål for , hvor længe en algoritme vil tage at fuldføre en løbetur gennem processen. For at måle tid kompleksitet med C + + , har du en række muligheder . Denne tutorial løber gennem processen med at finde tid kompleksitet. Instruktioner
1
Identificer din algoritme. Afhængig af din algoritme , bliver du nødt til at bruge en anden måleenhed for tid kompleksitet. Der er en række forskellige algoritme typer, herunder logaritmisk , brute force , iteration og arrayindeks . Når du har identificeret din algoritme , kan du begynde at analysere det.
2
Find tidskompleksitet . Dette er den svære del . At finde tid kompleksitet bestemt algoritme , fodre den større og større mængder af data og se, hvordan det sinker . Du kan også analysere de trin i algoritmen og se, hvordan det passer ind i fortiden - analyserede tidskompleksitet problemer. Check out oplysninger om Big O notation og information om algoritmer for mere hjælp (se Resources).
3
Analyser tidskompleksitet for at finde den bedste tilfældet for din proces. Hvis algoritmen kan udføres med en hurtigere metode , kan du ønsker at arbejde hen imod at gennemføre hurtigere metode . Generelt algoritmer gå fra hurtigste til at langsomst i denne rækkefølge: konstant tid , logaritmisk tid , lineære tid , polynomiel tid , eksponentiel tid og factorial tid. Den hurtigste er normalt en direkte kig op og tiden er den samme, uanset hvor stor den input. Den langsomste er generelt en brute force metode af en slags , der løber gennem hver eneste mulighed og bremser betydeligt som input stiger i størrelse. Det kan ikke være det værd at optimere algoritmen til en hurtigere tid, kompleksitet , hvis stigningen ville være temmelig lille, eller hvis du har at gøre med mindre mængder af data. Men hvis du beskæftiger sig med store mængder af data , så er du måske ønsker at overveje at tage den ekstra tid til at finde ud af , hvordan man skaber den mest optimerede kode.