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

Algoritmus 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)

Eiklīda algoritma piemērs, izmantojot blokshēmu (angļu valodā)

Algoritmu 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

Nassi–Š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

Pseidokods 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ā.

En otros idiomas
Afrikaans: Algoritme
Alemannisch: Algorithmus
አማርኛ: አልጎሪዝም
aragonés: Algorismo
العربية: خوارزمية
asturianu: Algoritmu
azərbaycanca: Alqoritm
تۆرکجه: القوریتم
башҡортса: Алгоритм
беларуская: Алгарытм
беларуская (тарашкевіца)‎: Альгарытм
български: Алгоритъм
bosanski: Algoritam
català: Algorisme
کوردی: ئەلگۆریتم
čeština: Algoritmus
Cymraeg: Algorithm
dansk: Algoritme
Deutsch: Algorithmus
Ελληνικά: Αλγόριθμος
English: Algorithm
Esperanto: Algoritmo
español: Algoritmo
eesti: Algoritm
euskara: Algoritmo
فارسی: الگوریتم
suomi: Algoritmi
føroyskt: Algoritma
français: Algorithme
Gaeilge: Algartam
galego: Algoritmo
עברית: אלגוריתם
हिन्दी: अल्गोरिद्म
hrvatski: Algoritam
magyar: Algoritmus
Հայերեն: Ալգորիթմ
interlingua: Algorithmo
Bahasa Indonesia: Algoritme
Ilokano: Algoritmo
íslenska: Reiknirit
italiano: Algoritmo
ქართული: ალგორითმი
Qaraqalpaqsha: Algoritm
Gĩkũyũ: Algorithm
қазақша: Алгоритм
한국어: 알고리즘
kurdî: Algorîtma
Кыргызча: Алгоритм
Latina: Algorithmus
Lëtzebuergesch: Algorithmus
Lingua Franca Nova: Algoritmo
lumbaart: Algoritm
lietuvių: Algoritmas
олык марий: Алгоритм
македонски: Алгоритам
മലയാളം: അൽഗൊരിതം
монгол: Алгоритм
Bahasa Melayu: Algoritma
Mirandés: Algoritmo
नेपाली: अल्गोरिदम
नेपाल भाषा: अल्गोरिथम
Nederlands: Algoritme
norsk nynorsk: Algoritme
norsk: Algoritme
occitan: Algoritme
Oromoo: Seermurtoo
ਪੰਜਾਬੀ: ਕਲਨ ਵਿਧੀ
polski: Algorytm
پنجابی: الگورتھم
português: Algoritmo
română: Algoritm
русский: Алгоритм
русиньскый: Алґорітм
саха тыла: Алгоритм
sicilianu: Alguritmu
Scots: Algorithm
srpskohrvatski / српскохрватски: Algoritam
Simple English: Algorithm
slovenčina: Algoritmus
slovenščina: Algoritem
shqip: Algoritmi
српски / srpski: Алгоритам
Basa Sunda: Algoritma
svenska: Algoritm
తెలుగు: అల్గారిథం
тоҷикӣ: Алгоритм
Tagalog: Algoritmo
Türkçe: Algoritma
татарча/tatarça: Алгоритм
українська: Алгоритм
oʻzbekcha/ўзбекча: Algoritm
Tiếng Việt: Thuật toán
walon: Algorisse
Winaray: Algoritmo
ייִדיש: אלגאריטם
中文: 算法
Bân-lâm-gú: Ián-sǹg-hoat
粵語: 演算法