Wat is in algoritme?

Untdek hoe't algoritme de wrâld rinne

In algoritme is in ynset fan ynstruksjes. De definysje is echt sa ienfâldich. In algoritme kin sa maklik wêze as jo folgjende ynstruksjes jaan:

  1. Gean nei de strjitte
  2. Nim it earste rjocht
  3. Sykje it twadde hûs op 'e lofterhaal
  4. Klok op 'e doar en
  5. It pakket befiele.

Mar wylst de definysje fan algoritme ienfâld is, kin de eigentlike betsjutting en hoe't it ús libben beynfloedet kin hiel kompleks wêze.

In foarbyld fan in algoritme

In mienskiplik foarbyld fan in algoritme dat wy yn ús deistich libben brûke is in resept. Dizze ynset fan ynstruksjes jout ús alle yngrediïnten dy't wy nedich binne en rjochting op wat mei dizze yngrediades te dwaan. Lûd maklik, krekt?

Mar wat as jo net witte wêr't de bepaalde beker hâldt? Jo hawwe in algoritme nedich om it te finen. Jo kinne sels in algoritme hawwe hoe't jo in mjitmeier brûke.

Dus al in algoritme is in ynset fan ynstruksjes, it moat ek rekkenje wa't of wat de ynstruksjes ynterpretearje sil. Bygelyks, as jo rjochtingen jaan oan in freon dy't detaillearret hoe't jo fan jo hûs nei it toppere winkelsintrum krije, jo freon sil allinich witte hoe't jo nei dat winkel krije as se witte wêr't jo hûs leit. Se binne net goed (noch) te finen dat it bepaalde bakkerij fan sizze, in oare freonhûs.

Dit is lykwols in algoritme kinne ienfâldich en kompleet wêze. En as wy yn termen fan kompjûter algoritme prate, fersterkje wat in kompjûter te dwaan is in fûnemintele diel fan formulierende algoritme.

Hoe sorteare Algoritme evoluearre

Ien fan 'e froastste algoritme is ûntstien út it blokje. Bubble sort is in metoade foar sortearjen fan getallen, brieven of wurden troch trochslach troch in gegevensbestân, te fergelykjen elke set fan wearden side-by-side en swappje se as jo gebrûk meitsje.

Dizze loop wurdt werhelle oant it algoritme kin troch de hiele list ferpleatse sûnder dat nedich is om te wikseljen, dat betsjut dat de wearden korrekt sorteare. Dit soarte fan algoritme wurdt faak bepaald as in rekursive algoritme, omdat it op himsels oer en troch rint oant it foltôgjen is.

De algoritme kin sa ienfâldich sjen:

  1. Gean nei de earste wearde.
  2. Kontrolearje dizze wearde tsjin de folgjende wearde en ferfange posysjes as nedich
  3. Gean nei de folgjende wearde en werhelje it fergeliking.
  4. As wy oan 'e ein fan' e list binne, gean dan nei boppe werom as der gjin wearde waard yn 'e loop swappen.

Mar bulteart wie net de effektivste manier om de wearden te sortearjen. As tiid gie op en kompjûters waarden faker in kompleet op te wurkjen, koenen nije sortearring algoritme opkomme.

Ien soart algoritme scans troch de earste list en skeaket in twadde list fan sortearre wearden. Dizze metoade makket allinich in ienige pass troch de orizjinele list, en mei elke wearde sil it troch de twadde list rinne oant it falt it fêste plak om de wearde te setten. Meastal is it effisjinter dan it gebrûk fan de bubble sort method.

Dit is wêr't algoritmeels echt gek wurde kinne. Of echt nijsgjirrich, ôfhinklik fan hoe't jo it sjen.

Hoewol't de bubble sort-metoade as ien fan 'e meast yneffizzen metoaden fan sortearjende wearden op in soad wizen beskôge wurdt, as de orizjinele list goed bepaald is, kinne blokjeart ien fan' e meast effisjint wêze. Dit is om't yn dit eksimplaar de balblin-sorte-algoritme trochgean sil troch de list in ien kear te bepalen en te bepalen dat it goed is sortearre.

Spitigernôch kinne wy ​​net altyd witte oft ús list presysearre is, sadat wy in algoritme kieze dy't it meast effisjint wêze sil om gemiddelde fia in grut tal listen te brûken.

Wat wy learje fan Bubble Sort

Facebook Algoritme en Mear yn it Algemiene libben

Algoritme binne op it wurk helpen minsken elke dei. As jo ​​de web sykje, is in algoritme op it wurk besiket de bêste sykresultaten te finen. Freegje jo smartphone foar rjochtingen, en in algoritme beslút de bêste route foar jo te nimmen. En as jo Facebook bliuwe, beslút in algoritme hokker fan ús Facebook-berjochten fan 'e freon de wichtichste binne foar ús. (Litte wy hoopje dat ús freonen net witte wêr't ien Facebook tinkt dat wy it meast graach wolle!)

Mar tinke algoritmysk kin ús helpe om fierdere ús komputer libbet. It kin sels helpe by ús in bettere sandwich bouwe.

Litte wy sizze dat ik begjin mei twa stikken brea, fersmoarget sânrêch op ien slach en mayonaise op in oare slach. Ik sette in slipe fan tsiis op it brea mei de mayonaise, in pear lammen op boppe, dus in lekker, twa sliemen fan tomato en dan kapt it mei dit sliep mei de sâlt op. Goeie sandwich, krekt?

Definitivel as ik it fuort fuortgean. Mar as ik it in skoft op 'e tafel litte, dan kin de topkeap fan it brea in soad fan' e tomato opnimme. It is in probleem dat ik net hielendal reizgje koe, en ik soe jierrenlang foar sandwiches sandwich meitsje, mar ien kear kin ik begjinne mei tinke oan manieren om myn algoritme te feroarjen om in bettere sandwich op te bouwen.

Sa kinne ik bygelyks de tomaten loslitte. Mar ik wol dy tomato-smaak net ferlieze. Dus ynstee dêrfan kin ik de tomato op it sânplak sette nei it brea en de salap. Dit lit de salatje in beskerme barriêre foarmje tusken de tomato en it brea.

Dit is hoe't in algoritme ûntstean. En in algoritme moat net troch in komputer útfierd wurde om in algoritme te wêzen. In algoritme is in proses, en prosessen binne om ús hinne.