Algoritms
Algoritms matemātikā un datorzinātnē ir veicamo darbību priekšraksts kāda noteikta rezultāta sasniegšanai vai uzdevuma risināšanai. Algoritmu veido pēc stingriem noteikumiem veicamu darbību virkne, kuras izpildot iegūst vajadzīgo rezultātu. Kā pazīstamus algoritmus var minēt Eiklīda algoritmu un dažādus kārtošanas algoritmus. Algoritmu vizualizēšanai bieži izmanto blokshēmas. Tos var pierakstīt arī pseidokodā, programmēšanas valodā un ar citām metodēm.
Termins ‘algoritms’ ir radies no persiešu matemātiķa Al-Horezmī vārda latīniskās formas Algorithmi. Ikdienas dzīvē kā algoritma piemēri var būt recepte, dažādu objektu lietošanas instrukcija un spēļu noteikumi. Pēc algoritmiem vadās arī datori, roboti un citas mašīnas. Ikvienu datorprogrammu veido algoritmi, savukārt algoritmu rakstīšanu šim nolūkam sauc par programmēšanu. Zinātni, kas pēta algoritmus, sauc par algoritmiku.
Algoritma pieraksta metodes
labot šo sadaļuAlgoritmus pieraksta dažādi. Bieži izmanto blokshēmas. Algoritmus var pierakstīt arī pseidokodā, aktivitāšu diagrammā, Nassi–Šneidermana diagrammā, kā programmēšanas valodu un ar citām metodēm.
Algoritma grafiskais pieraksts (blokshēma)
labot šo sadaļuAlgoritmu vizualizēšanai bieži izmanto blokshēmas. Katrā blokshēmas elementā tiek izpildīta viena, parasti vienkārša darbība — komanda. Komandai jābūt precīzai un nepārprotamai. Nākamā algoritma komanda bieži vien ir atkarīga no iepriekšējā solī iegūtā rezultāta. Blokshēmā katra algoritma komanda vai darbība ir apzīmēta ar ģeometrisku figūru (bloku). Algoritma sākumu un beigas parasti apzīmē ar elipsi vai taisnstūri ar noapaļotiem stūriem. Ievadi un izvadi apzīmē ar paralelogramu vai taisnstūri. Lēmuma pieņemšanu (nosacījumu) apzīmē ar rombu, savukārt sešstūris apzīmē cikla sākumu. Tajā dažreiz ieraksta skaitu, cik reizes darbība jāatkārto. Jebkuru citu darbību apzīmē ar taisnstūri.
Nassi–Šneidermana diagramma
labot šo sadaļuNassi–Šneidermana diagrammas (Nassi–Shneiderman diagram) pluss ir tas, ka algoritmu var viegli nolasīt, bet, tiklīdz nepieciešams algoritmu izmainīt, lielu daļu no diagrammas ir nepieciešams pārzīmēt.
Pseidokods
labot šo sadaļuPseidokods nav formāls algoritma pieraksta veids. Vizuāli tas atgādina pierakstu kādā no programmēšanas valodām. Pseidokoda sintakse balstās uz tādām programmēšanas valodām kā Pascal vai Beisikā.
Algoritmu struktūras
labot šo sadaļuIzšķir vairākas algoritmu struktūras pēc komandu izpildes secības. Viena no tām ir lineārā algoritmu struktūra, kur komandas tiek izpildītas tādā secībā, kā uzrakstītas. Šādu algoritmu blokshēmās neparādās sazarošanās elementi. Otra ir sazarotā struktūra, kur komandu izpildes secība ir atkarīga no noteiktu nosacījumu izpildes vai neizpildes. Vēl izdala cikliskās struktūras, kur algoritmā ir elements, kas algoritma izpildes laikā tiek izpildīts atkārtoti vairākas reizes. Cikliskos algoritmus sīkāk iedala vēl algoritmos, kur darbību atkārtoto reižu veikšanas skaits ir zināms, un algoritmos, kur darbības atkārtoti tiek veiktas līdz tiek iegūts vēlamais rezultāts.
Skatīt arī
labot šo sadaļuAtsauces
labot šo sadaļuŠim rakstam ir nepieciešamas atsauces uz ārējiem avotiem. Lūdzu, palīdzi uzlabot šo rakstu, pievienojot vismaz vienu atsauci. Ja ir kādi ieteikumi, vari tos pievienot diskusijā. Vairāk lasi lietošanas pamācībā. Meklēt atsauces: "Algoritms" – ziņas · grāmatas · scholar · brīvi attēli |
Ārējās saites
labot šo sadaļu- «algorithmist.com vietne ar dažādiem populāriem algoritmiem» (angliski). Arhivēts no oriģināla, laiks: 2014. gada 16. janvārī. Skatīts: 2015. gada 20. janvārī.
- «Dictionary of Algorithms and Data Structures (Datu struktūru un algoritmu vārdnīca)» (angliski). National Institute of Standards and Technology. Arhivēts no oriģināla, laiks: 2018. gada 22. decembrī. Skatīts: 2019. gada 13. janvārī.
Šis ar datorzinātni saistītais raksts ir nepilnīgs. Jūs varat dot savu ieguldījumu Vikipēdijā, papildinot to. |
Šis ar matemātiku saistītais raksts ir nepilnīgs. Jūs varat dot savu ieguldījumu Vikipēdijā, papildinot to. |