Attēla kredīts: vgajic/E+/GettyImages
Jauniem programmētājiem jaunu algoritmu izstrāde var šķist biedējoša, taču tā ir prasme, ko var praktizēt tāpat kā jebkuru citu. Sāciet, meklējot algoritmu problēmu grāmatu iesācējiem vai apmeklējot tiešsaistes vai bezsaistes datorzinātņu nodarbību. Praktizējiet algoritmu izstrādes pamatus, tostarp sarežģītības un izpildlaika novērtēšanu, pārbaudi malas gadījumiem, kas var radīt problēmas datora algoritmam un sadalīt problēmas mazākās daļas.
Kas ir datora algoritms
Algoritms ir procedūra, ko dators vai cilvēks ievēro, lai atrisinātu problēmu. Garā dalīšana ir paraugalgoritms, ko daudzi cilvēki mācās darīt skolā. Vēl viens izplatīts piemērs ir Eiklīda algoritms, ko izmanto, lai atrastu divu skaitļu lielāko kopīgo dalītāju.
Dienas video
Datora algoritms galu galā tiek uzrakstīts programmēšanas valodā, kuru dators var saprast, bet tad, kad algoritms tiek izpildīts izstrādāti, programmētāji un datorzinātnieki to bieži raksta vispirms neformāli kā prozu un pēc tam formālāk vispārīgā formātā, ko sauc par pseidokods.
Pseidokods izskatās pēc programmēšanas valodas, taču, tā kā tas ir paredzēts lasīt cilvēkiem, nevis datoriem, tam nav stingru sintakses noteikumu.
Vienkārši algoritmu piemēri iesācējiem
Slavenus algoritmu piemērus bieži māca iesācējiem datorzinātniekiem un programmētājiem. Daži piemēri ir Dijkstra algoritms, ko izmanto grafu teorijā, lai atrastu īsāko ceļu starp diviem punktiem; Merge Sort, ko izmanto datu sarakstu kārtošanai; un datu šifrēšanai izmantotais RSA algoritms. Daudzi no tiem ir pieejami tiešsaistē bezmaksas mācību grāmatās, videoklipos un kursu materiālos.
Tiešsaistes mācību vietnē Khan Academy ir daudz algoritmu piemēru, ar kuriem iesācēji var eksperimentēt. Lielākās universitātes, piemēram, Hārvarda, Stenforda un Masačūsetsas Tehnoloģiju institūts, veido mācību programmas materiāli un kursu video ar izplatītiem algoritmiem, kas pieejami tiešsaistē ievada datorzinātnēm klases.
Ir arī vietnes ar programmēšanas sacensību problēmām un skaidrojumiem par to risināšanu, kas var palīdzēt cilvēkiem, kuri ir ieinteresēti attīstīt savas prasmes.
Algoritma apsvērumi
Izstrādājot jaunu algoritmu, vēlaties pārliecināties, vai tas darbojas visos gadījumos, kad uzskatāt, ka tam vajadzētu, un mēģināt saprast, cik tas ir efektīvs. Parasti programmētāji sadala algoritmu atsevišķās daļās, lai viņi varētu domāt par to, kā katra daļa darbojas un cik ilgi tas aizņem. To sauc par modulāro dizainu.
Pirms koda rakstīšanas ir ieteicams pats pārbaudīt algoritmu ar pildspalvu un papīru dažos vienkāršos gadījumos. Domājot par efektivitāti, padomājiet par vidējo gadījumu, parastajām situācijām, ar kurām varētu saskarties jūsu algoritms, un sliktāko izpildlaiku. Sliktākais izpildlaiks bieži tiek attēlots ar tā saukto Big-O notation.