Algoritmi

Täsmällinen, vaiheittainen ohje jonkin tehtävän ratkaisemiseen.

Algorithm · Koodaus

Algoritmi on joukko tarkkoja ohjeita, jotka suoritetaan järjestyksessä jonkin ongelman ratkaisemiseksi. Ruokaresepti on arkinen esimerkki: tee ensin tämä, sitten tuo, ja jos taikina on liian löysää, lisää jauhoja. Ohjelmoinnissa algoritmi kertoo, miten tietokone esimerkiksi järjestää listan, etsii lyhimmän reitin tai valitsee näytettävän sisällön. Arkikielessä algoritmilla tarkoitetaan usein sosiaalisen median järjestelmää, joka päättää, mitä kukin käyttäjä näkee.

Algoritmi ja koodi ovat eri asioita. Sama algoritmi voidaan kirjoittaa millä tahansa ohjelmointikielellä, ja koodi on sen toteutus. Algoritmeja arvioidaan kahdella mittarilla: antavatko ne oikean tuloksen ja kuinka paljon aikaa ja muistia ne tarvitsevat, kun käsiteltävän datan määrä kasvaa.

Vibekoodauksessa algoritmeja ei tarvitse keksiä itse, koska tekoäly tuntee yleisimmät ratkaisut, kuten lajittelun, haun ja reitinhaun. Hyödyllisempää on osata kuvata ongelma tarkasti: mitä syötteitä on, mitä pitää tulla ulos ja mitä tehdään erikoistapauksissa. Kun pyydät tekoälyä kirjoittamaan algoritmin, pyydä samalla testit tyhjälle listalle, yhdelle alkiolle ja suurelle datamäärälle. Ne paljastavat useimmat virheet.

Usein kysyttyä

Mikä on algoritmi?

Algoritmi on vaiheittainen ohje, joka kertoo tarkasti, miten tietty tehtävä ratkaistaan. Tietokoneohjelmat koostuvat algoritmeista, jotka on kirjoitettu jollakin ohjelmointikielellä.

Mitä algoritmi tarkoittaa somessa?

Sosiaalisessa mediassa algoritmilla tarkoitetaan järjestelmää, joka valitsee ja järjestää, mitä sisältöä kukin käyttäjä näkee. Se painottaa esimerkiksi sitä, mihin olet aiemmin reagoinut ja keitä seuraat.

Mikä on esimerkki algoritmista?

Arkinen esimerkki on tapa etsiä sanaa paperisesta sanakirjasta: avaa kirja keskeltä, katso onko sana ennen vai jälkeen, ja jatka siitä puoliskosta, jossa sana on. Ohjelmoinnissa sama ajatus on binäärihaku.

Esimerkkejä

Lajittelualgoritmi järjestää listan, esimerkiksi tuotteet hinnan mukaan

Binäärihaku löytää arvon järjestetystä listasta puolittamalla hakualueen joka kierroksella

Reitinhakualgoritmi laskee lyhimmän reitin kartalla

"Kirjoita funktio, joka poistaa listasta tuplat ja säilyttää järjestyksen, ja lisää testit erikoistapauksille"

Sosiaalisen median algoritmi järjestää syötteen sen perusteella, mihin olet aiemmin reagoinut

Sama algoritmi voidaan toteuttaa Pythonilla, JavaScriptillä tai millä tahansa muulla kielellä