Wat ass en Algorithmus?

Entdeckt wéi Algorithmen d'Welt lafen

En Algorithmus ass eng Rei Instruktiounen. D'Definitioun ass wierklech sou einfach. En Algorithmus kann esou einfach wéi Andeems wéi:

  1. Gidd d 'Strooss
  2. Huelt dat éischt richteg
  3. Fannt déi zweet Haus op der lénkser Säit
  4. Knock op der Dier an
  5. Gitt Package.

Mä wann d'Definitioun vum Algorithmus einfach ass, ass déi eigentlech Aart a wéi et eis Liewen betrëfft ka relativ komplex sinn.

E Beispill vun engem Algorithmus

E gemeinsame Beispill vun engem Algorithmus deen mir am alldeegleche Liewen benotzt gi sinn e Rezept. Dëse Set vun Instruktiounen gitt eis all d'Ingredienten déi mir brauchen an Direktioune wat fir dës Zutaten ze maachen. Sounds einfach, richteg?

Awer wat wann Dir wësst net wou d'Messbecher opgehuewen sinn? Dir wëllt e Algorithmus fannen fir dat ze fannen. Dir kënnt och e Algorithmus brauche fir wéi Dir eng Mooss benotzt gëtt.

Also wann e Algorithmus eng Rei vun Instruktiounen ass, da muss et och berücksichte wéi deen oder wat fir dës Instruktiounen ze interpretéieren. Zum Beispill, Wann Dir Andeems Dir Iech e Frënd kritt, wéi Dir vun Ärem Haus zum nächste Liewensmëttelgeschäft kënnt kommen, kritt Äre Frënd nëmmen a wat fir dësen Geschäft geliwwert, wann se wësse wou Dir wunnt. Si sinn net fähig (nach) fir ze fannen datt e bestëmmte Liewensmëttelgeschäft aus engem anere Frënd vum Haus ze soen.

Dëst ass wéi en Algorithmus ka schlëmm a komplex sinn. A wann Dir eis iwwer Computer Algorithmen schwätzt, verstitt Dir, wat e Computer amgaang ass ze maachen ass e fundamentaalt Deel vun der Formuléierung vun Algorithmen.

Wéi Sortéiergäng Algorithmus evoluéiert

Ee vun den éischten Algorithmus deen erstallt gouf, war d'Bluttzort Routine. Bubble sort ass eng Method fir d'Zuelen, Brieche oder Wierder ze markéieren andeems en duerch eng Datebank gespaart gëtt, andeems se all Set vun Wäerter niewendruehend vergläicht an se a wäiten ze verhandelen wann se gebraucht ginn.

Dëse Loop gëtt repetéiert bis de Algorithmus kann duerch d'ganz Lëschte réckelen, ouni datt Dir alles braucht, wat heescht datt d'Wäerter richteg sinn. Dës Zort vun Algorithmus gëtt oft als rekursive Algorithmus bezeechent ginn, well se op sech a méi wéi bis elo opgehaang ass, bis et d'Aufgab vervollstännegt.

De Algorithmus kéint sou einfach wéi méiglech sinn:

  1. Gitt op den éischte Wäert.
  2. Kontrolléiert dësen Wäert géint de nächste Wäert a verdéiwen Positioun wann néideg
  3. Gitt weg de nächste Wäert a widderhuelen de Verglach.
  4. Wann mir am Ende vun der Lëscht sinn, géi zréck bis un d'Uewen, wann e Wäert während de Loop geännert gouf.

Awer Blubbloss ass net déi effektivste Wäert vun de Wäertwierder. Wéi d'Zäit an d'Computere konnt méi komplex ginn wéi vill komplex Aufgaben schnell fäerdeg war, goufen nei Sortie-Algorithmen opgestallt.

Een sougenannte Algorithmus scannt duerch déi éischt Lëscht an erënnert eng zweet Lëscht vu sortéierten Wäerter. Dës Methode mécht nëmmen eng eenzeg Pass vu der ursprénglecher Lëscht, a mat all Wäert gëtt et duerch d'zweet Lëscht geschloen bis et de richtegt Plaz fënnt fir de Wäert ze setzen. Normalerweis ass et méi effizient wéi d'Blutzelcher Methode benotzt.

Dëst ass wou Algorithmen wierklech wierklech verréckt sinn. Oder wierklech interessant, dovun of wéi Dir et schéngt.

Obwuel d'Methode Blubelart als eent vun de meeschte Ineffizienten Methoden fir d'Wäertbestëmmung op ville Weisen ze befaassen ass, wann déi ursprénglech Lëscht korrekt virgestallt ass, kann Blubberart ee vun deenen effizientesten sinn. Dat ass, well an dësem Fall de Blatzsortalgorithmus duerch d'Lëscht eng eenzeg Kéier kënnt a bestëmmen datt et korrekt sortéiert gëtt.

Leider si mir net ëmmer gewosst, ob eis Lëscht préziséiert gëtt, also wäerte mir e Algorithmus wielen deen am effizientsten an der Moyenne vun enger grousser Lëschte benotzt gëtt.

Wat mir vun Bubble Sort kennen léieren

Facebook Algorithmen A méi am Alliéierte Liewen

Algorithmen sinn op der Aarbecht hëlleft den Mënsch all Dag. Wann Dir de Web sucht, ass en Algorithmus op der Aarbecht a versicht d'beschten Sichresultater ze fannen. Frot Äre Smartphone fir Richtungen, an en Algorithmus decidéiert de beschte Wee fir Iech ze huelen. A wann Dir de Facebook agestallt, decidéiert en Algorithmus wat fir eisen Facebook Poste am meeschten interessant sinn. (Lass hoffen, datt eis Frënn net erausfanne wat fir eng Facebook denkt, mir wëllen am meeschten!)

Denken awer elo algorithmesch kann eis vill wäit iwwer eise Computer liewen. Et kann och hëllefen eis e besseren Sandwich ze bauen.

Loosst eis soen, datt ech mat zwee Scheich vum Brout fänke, de Senf op enger Scheff a Mayonnaise op enger anerer Scheier verdeelt. Ech hunn eng Scheffele vum Kéis op de Brout mat der Mayonnaise, e puer Schinken op der Uewerfläch, e puer Salat, zwee Scheiwen Tomaten a packen et mat der Scheff mat der Senne op. Gutt Sandwich, richteg?

Definitiv wann ech et iessen. Mee wann ech et fir eng Zäit laang op der Tafel lossen, ass déi Top Scheum vum Brout kaum nogeloossen aus e puer Tomaten ze iessen. Et ass e Problem deen ech net ganz virsiichteg war, an ech kéint e puer Sandwiches ze maachen haat, awer ech ka mech elo ufänken d'Weeër ze änneren, fir meng Algorithmus ze wiesselen fir e bessert Sandwich ze bauen.

Zum Beispill konnt ech d'Tomatenstéck erofhuelen. Mee ech wëll net dee Tomato Geschmaach verléieren. Also, ech huelen d'Tomaten op de Sandwich no der Brout an de Salat. Dëst erméiglecht de Salmgaass eng Schutzbicher tëscht der Tomaten a dem Brout ze bilden.

Dëst ass wéi en Algorithmus entwéckelt. An e Algorithmus muss net vun engem Computer lafen fir e Algorithmus ze sinn. Een Algorithmus ass e Prozess, a Prozesser sinn all ronderëm eis.