Wat is 'n algoritme?

Vind uit hoe algoritmes die wêreld verloop

'N Algoritme is 'n stel instruksies. Die definisie is regtig so eenvoudig. 'N Algoritme kan so maklik wees soos om instruksies soos volg te gee:

  1. Gaan af in die straat
  2. Neem die eerste regs
  3. Vind die tweede huis aan die linkerkant
  4. Klop aan die deur en
  5. Lewer die pakket.

Maar terwyl die definisie van algoritme eenvoudig is, kan die werklike betekenis en hoe dit ons lewens affekteer, redelik kompleks wees.

'N Voorbeeld van 'n algoritme

'N Algemene voorbeeld van 'n algoritme wat ons in ons daaglikse lewe gebruik, is 'n resep. Hierdie stel instruksies gee ons al die bestanddele wat ons benodig en aanwysings oor wat om te doen met die bestanddele. Klink maklik, reg?

Maar wat as jy nie weet waar die maatbeker gehou word nie? Jy sal 'n algoritme nodig hê om dit te vind. Jy sal dalk selfs 'n algoritme nodig hê om 'n maatbeker te gebruik.

So terwyl 'n algoritme 'n stel instruksies is, moet dit ook in ag neem wie of wat die instruksies sal interpreteer. Byvoorbeeld, as jy aanwysings gee aan 'n vriend wat weet hoe om van jou huis na die naaste kruidenierswinkel te kom, sal jou vriend net weet hoe om by die winkel te kom as hulle weet waar jou huis geleë is. Hulle is nie in staat om daardie spesifieke kruidenierswinkel te vind van 'n ander vriend se huis nie.

Dit is hoe 'n algoritme beide eenvoudig en kompleks kan wees. En wanneer ons praat in terme van rekenaaralgoritmes, is dit 'n fundamentele deel van die formulering van algoritmes om te verstaan ​​wat 'n rekenaar in staat is om te doen.

Hoe Sorteer Algoritmes Ontwikkel

Een van die vroegste algoritmes wat geskep is, was die roetine van die borrel. Bubble sort is 'n metode om getalle, letters of woorde te sorteer deur 'n datastel op te laai, elke stel waardes langs mekaar te vergelyk en dit te vervang wanneer dit nodig is.

Hierdie lus word herhaal totdat die algoritme deur die hele lys kan beweeg sonder om iets te ruil, wat beteken dat die waardes korrek gesorteer is. Hierdie tipe algoritme word dikwels na verwys as 'n rekursiewe algoritme omdat dit oor en oor heen en weer slaan totdat dit die taak voltooi.

Die algoritme kan so eenvoudig lyk soos:

  1. Gaan na die eerste waarde.
  2. Gaan dit waardeer teen die volgende waarde en ruil posisies indien nodig
  3. Gaan na die volgende waarde en herhaal die vergelyking.
  4. As ons aan die einde van die lys is, gaan terug na bo as enige waarde gedurende die lus vervang is.

Maar bubble sort het nie die mees doeltreffende manier om waardes te sorteer, blyk te wees nie. Soos die tyd aangaan en rekenaars meer in staat was om vinnig komplekse take te doen, het nuwe sorteer algoritmes opgeduik.

Een so 'n algoritme skanderings deur die eerste lys en skep 'n tweede lys gesorteerde waardes. Hierdie metode maak net 'n enkele deur die oorspronklike lys, en met elke waarde sal dit deur die tweede lys loop totdat dit die regte plek kry om die waarde te plaas. Gewoonlik is dit meer doeltreffend as die gebruik van die bubble sort-metode.

Dit is waar algoritmes regtig gek kan word. Of baie interessant, afhangende van hoe jy dit sien.

Terwyl die bubble soort metode beskou word as een van die mees ondoeltreffende metodes om waardes te sorteer op baie maniere, as die oorspronklike lys behoorlik geportorteer word, kan bubble sort een van die mees doeltreffende wees. Dit is omdat die soorte algoritme in daardie geval een keer deur die lys gaan en bepaal dat dit korrek gesorteer is.

Ongelukkig weet ons nie altyd of ons lys verordineer is nie, dus moet ons 'n algoritme kies wat die beste sal wees om gemiddeld oor 'n groot aantal lyste te gebruik.

Wat ons leer van bubble sorteer

Facebook Algoritmes En Meer In Die Algehele Lewe

Algoritmes werk elke dag aan mense. As jy op die web soek, is 'n algoritme by die werk om die beste soekresultate te vind. Vra jou slimfoon vir aanwysings, en 'n algoritme besluit die beste roete vir jou om te neem. En wanneer jy Facebook blaai, besluit 'n algoritme watter van ons vriende se Facebook-plasings vir ons die belangrikste is. (Kom ons hoop ons vriende vind nie uit watter een Facebook dink ons ​​hou van die meeste nie!)

Maar algoritmies dink ons ​​kan ons ver van ons rekenaar se lewens help. Dit kan ons selfs help om 'n beter toebroodjie te bou.

Kom ons sê ek begin met twee skywe brood, die mosterd op een snye en mayonnaise op 'n ander sny versprei. Ek sit 'n stukkie kaas op die brood met die mayonnaise, 'n bietjie ham, 'n bietjie blaarslaai, twee snye tamatie en dan met die sny met die mosterd daarop. Goeie toebroodjie, reg?

Beslis as ek dit dadelik eet. Maar as ek dit vir 'n rukkie op die tafel laat, kan daardie boonste brood dalk sag word van die insekte van daardie tamatie. Dit is 'n probleem wat ek nie regtig verwag het nie, en ek kan jare lank toebroodjies maak voordat ek dit merk, maar sodra ek dit kan doen, kan ek begin dink aan maniere om my algoritme te verander om 'n beter toebroodjie te bou.

Byvoorbeeld, ek kon ontslae raak van die tamatie. Maar ek wil nie daardie tamatiesmaak verloor nie. So, in plaas daarvan, kan ek die tamatie op die toebroodjie sit na die brood en die blaarslaai. Dit laat die blaarslaai 'n beskermende versperring tussen die tamatie en die brood.

Dit is hoe 'n algoritme ontwikkel. En 'n algoritme moet nie deur 'n rekenaar bestuur word om 'n algoritme te wees nie. 'N Algoritme is 'n proses, en prosesse is oral om ons.