Algoritm vs pseudokood
Algoritm on lihts alt probleemi lahendus. Algoritm esitab probleemi lahenduse hästi määratletud sammude või juhiste komplektina. Pseudokood on üldine viis algoritmi kirjeldamiseks. Pseudokood ei kasuta kindla programmeerimiskeele süntaksit, seetõttu ei saa seda arvutis käivitada. Kuid see sarnaneb väga palju programmeerimiskeele struktuuriga ja sisaldab ligikaudu sama detailsust.
Algoritm
Algoritm annab lahenduse konkreetsele probleemile täpselt määratletud sammude kogumina. Retsept kokaraamatus on hea näide algoritmist. Kui arvutit kasutatakse konkreetse probleemi lahendamiseks, tuleb lahenduse sammud arvutile edastada. See muudab algoritmide uurimise arvutiteaduses väga oluliseks osaks. Algoritmi käivitatakse arvutis, kombineerides palju elementaarseid tehteid, nagu liitmised ja lahutamised, et sooritada keerukamaid matemaatilisi toiminguid. Kuid algoritmi idee tõlkimine arvutikoodiks ei ole lihtne. Eelkõige võib algoritmi teisendamine madala taseme keelde, näiteks montaažikeelde, olla väga tüütu kui kõrgetasemelise keele (nt C või Java) kasutamine. Algoritmi koostamisel on oluline teha analüüs algoritmi nõutavate ressursside (nt aeg ja salvestusruum) kohta. Algoritmide aja- ja salvestusanalüüsi tegemiseks kasutatakse selliseid tähistusi nagu suur O-tähistus. Algoritme saab väljendada loomulike keelte, pseudokoodi, vooskeemide jne abil.
Pseudokood
Pseudokood on üks meetoditest, mida saab kasutada algoritmi esitamiseks. See ei ole kirjutatud kindlas süntaksis, mida programmeerimiskeel kasutab ja seetõttu ei saa seda arvutis käivitada. Pseudokoodide kirjutamiseks kasutatakse palju vorminguid ja enamik neist laenavad osa struktuure populaarsetest programmeerimiskeeltest nagu C, Lisp, FORTRAN jne. Samuti kasutatakse loomulikku keelt ebaoluliste detailide esitamisel. Enamik algoritme on esitatud pseudokoodi abil, kuna neid saab lugeda ja mõista, kasutades programmeerijaid, kes tunnevad erinevaid programmeerimiskeeli. Mõnel keelel, nagu Pascal, on pseudokoodiga väga sarnane süntaks, mis muudab pseudokoodist vastavaks programmikoodiks teisendamise lihtsamaks. Pseudokood võimaldab kaasata juhtstruktuure, nagu WHILE, IF-THEN-ELSE, REPEAT-UNTIL, FOR ja CASE, mis on olemas paljudes kõrgetasemelistes keeltes.
Mis vahe on algoritmil ja pseudokoodil?
Algoritm on täpselt määratletud sammude jada, mis pakub lahenduse antud probleemile, samas kui pseudokood on üks meetoditest, mida saab kasutada algoritmi esitamiseks. Kui algoritme saab kirjutada loomulikus keeles, siis pseudokood kirjutatakse vormingus, mis on tihed alt seotud kõrgetasemeliste programmeerimiskeele struktuuridega. Kuid pseudokood ei kasuta spetsiifilist programmeerimiskeele süntaksit ja seetõttu saavad sellest aru programmeerijad, kes tunnevad erinevaid programmeerimiskeeli. Lisaks võib pseudokoodis esitatud algoritmi teisendamine programmeerimiskoodiks olla palju lihtsam kui loomulikus keeles kirjutatud algoritmi teisendamine.