Algoritem je zaporedje navodil ali ukazov, ki se izvajajo sistematično z namenom reševanja problema ali izvajanja naloge.
Beseda "algoritem" se nanaša na arabskega matematika Al Khowarizmija, ki je živel v devetem stoletju, in opisal pravila za matematične enačbe.
Algoritmi so kot recept za torto: zaporedje dejanj, ki jih je treba izvesti, dokler ne dosežemo končnega cilja - končne torte.
Algoritmi se uporabljajo od preprostih vsakdanjih nalog do zapletenih računalniških programov in orodij, ki prepoznajo vedenje potrošnikov v internetu.
Vse računalniške funkcije, pametne telefone in tableteso na primer rezultat algoritmov. Ti stroji lahko v nekaj sekundah izvedejo milijarde ukazov.
Primeri delovanja algoritma
V matematiki se pojavijo algoritmi, ki opisujejo pravila za algebraične enačbe, vendar jih je mogoče uporabiti za katero koli zaporedje končnih dejanj, ki želijo rešiti problem.
Vse naloge, ki jih opravljamo vsak dan, je mogoče pretvoriti v algoritme, samo razvozlati vse potrebne ukrepe za dosego določenega cilja.
Če bi na primer naredili algoritem za pripravo kave, bi lahko imeli naslednje korake:
- zavremo vodo;
- dajte prašek v filter;
- izklopite vodo;
- spusti vodo skozi kavni prah.
Algoritmi, ki se uporabljajo v računalnikih, so bolj zapleteni in vključujejo tudi možnosti. Poglejmo primer miške nad internetnim brskalnikom.
Ukaz za zapiranje zaslona daje algoritem, ki razume, da:
- Če miška klikne na "x", mora biti stran zaprta;
- Če miška ne klikne na “x”, se ne sme storiti ničesar.
Ta algoritem je mogoče strukturirati v diagramu poteka:
V osnovi so algoritmi sestavljeni iz vhodnih podatkov (vhod), obdelava in izhodni podatki (izhod). To strukturo lahko zlahka razumemo na primeru kalkulatorja:
- Vhodni podatki: vrednosti in operacije, ki jih je treba izvesti
- Obravnavati: izračuni, ki jih izvaja stroj
- Izhodni podatki: rezultat operacije
Algoritmi se uporabljajo pri računalniškem programiranju
Algoritem je zelo pomemben koncept za programiranje, saj vsi stroji in računalniški programi delujejo iz zaporedja končnih dejanj, ki vodijo do izvedbe naloge.
Vloga osebe, ki se ukvarja s programiranjem računalnikov in programske opreme, je razmisliti o vseh korakih nalog in jih objektivno in jasno opisati, da jih lahko računalnik izvede.
Primer bi bil program, ki kaže, ali je študent opravil določen predmet ali ne. Glede na to, da je končna ocena povprečje dveh testov, opravljenih v semestru, bi bili ukazi:
- Oceno zberemo v dveh izvedenih preizkusih;
- Izračunajte aritmetično sredino med njimi;
- Če je rezultat večji od 7, je študent opravil;
- Če je rezultat manjši od 7, študent ni uspel.
Vendar računalniki ne razumejo jezika, napisanega na ta način, zato morajo programerji te ukaze "prevesti" v programske jezike. Nekaj primerov programski jezik so:
- Java
- Jezik C
- Jezik C ++
- Jezik C
- Python
Operacije algoritma stroji izvajajo zelo hitro. Tipičen prenosni računalnik na primer običajno izvede več kot milijardo operacij na sekundo.
Ta hitrost delovanja je revolucionirala računalniški svet, saj lahko stroji izvedejo izračune v zelo kratkem času, za katerega bi ljudje potrebovali dneve, mesece ali celo leta.
Algoritmi na internetu
Algoritme uporabljajo tudi v internetu, zlasti iskalniki in družabna omrežja.
Uporaba algoritmov v iskalnikih
Eden najbolj zapomnjenih primerov je algoritem iskalnika Google, ki izvaja več operacij za organiziranje načina, kako se rezultati iskanja prikažejo uporabniku.
Ko uporabnik v Googlu išče ključno besedo, na primer "kaj je demokracija", je vrstni red prikazani rezultat je odvisen od več izračunov, ki jih je algoritem izvedel, da bi jih postavil v to položaj.
Ti izračuni temeljijo na več spremenljivkah, kot so kakovost in pravočasnost vsebine, kakovost spletnega mesta, na katerem je vsebina, in kako dolgo ljudje ostanejo na tej strani.
Googlov algoritem je precej zapleten in se občasno posodablja, da zagotovi boljšo izkušnjo in uporabnikom predstavi najboljše rezultate.
Uporaba algoritmov v socialnih omrežjih
Socialna omrežja so programirana tudi s kompleksnimi algoritmi. Ti viri Facebook, Instagram in Twitter na primer prikazujejo objave in oglase glede na vedenje uporabnikov.
To pomeni, da se v vaših objavah ne bodo pojavile vse objave vaših prijateljev. krme. Algoritmi teh socialnih omrežij izberejo tiste, ki so najbolj smiselni glede na vaše želje.
Facebookov algoritem, imenovan EdgeRankna primer za vas izbere najpomembnejšo vsebino glede na več dejavnikov, kot so:
- Publikacije in strani, ki so vam všeč;
- Ljudje, s katerimi komunicirate;
- Strani, na katerih puščate komentarje;
- Vaše delnice.
Spotify je še en primer aplikacije in socialnega omrežja, ki z algoritmi uporabnikom omogoča bolj prilagojeno izkušnjo. Vsak teden aplikacija ponuja seznam predvajanja "Odkritja v tednu".
To seznam predvajanja vsebuje 30 pesmi, ki jih uporabnik v aplikaciji še nikoli ni predvajal, vendar so podobne drugim skladbam, ki jih običajno posluša.
Cilj je uporabniku predstaviti skladbe in skupine, ki jih še ne pozna, vendar so verjetno združljive z njegovim glasbenim okusom.
Glej tudi pomen programske opreme in strojne opreme.