A algoritm det är en uppsättning instruktioner som är utformade för att utföra en specifik uppgift. Det vill säga det är ett systematiskt förfarande som i ett begränsat antal steg ger svaret på en fråga eller lösningen på ett problem. Ett exempel på en algoritm är den för Googles sökmotor, där den när du infogar ett ord ger flera resultat i form av webbsidor.
Det kan vara en komplex process, som att spela en musikfil eller en enkel operation, som att lägga till två nummer. Vid datorprogrammering skapas algoritmer som funktioner. Dessa funktioner är små program som kan refereras till av ett större program.
En bildvisningsapplikation kan innehålla ett bibliotek med funktioner, var och en med en specifik algoritm för att representera olika bildfilformat..
Ett bildredigeringsprogram kan innehålla algoritmer utformade för att bearbeta bilddata. Några exempel är beskärning, storleksändring, skärpning, suddighet, minskning av röda ögon och förbättring av färg..
Artikelindex
Algoritmen måste vara tydlig och entydig. Var och en av dina steg eller handlingar måste vara exakt definierade, strikt tydliga i alla avseenden och måste entydigt bara ha en mening..
En algoritm har noll eller fler ingångar, hämtade från en specifik uppsättning objekt. Om algoritmen indikerar att ingångsdata ska tas bör dessa ingångsdata vara väl definierade.
Algoritmen har alltid en eller flera utgångar, som har en relation till ingångarna. Algoritmen måste tydligt definiera vilken utdata som kommer att produceras och måste också vara väl definierad.
Algoritmen måste vara ändlig, det vill säga den måste alltid sluta någon gång, efter ett begränsat antal steg, och inte bli hakad i oändliga slingor eller liknande.
Algoritmen måste vara smart och enkel, på ett sådant sätt att den kan köras utan problem med tillgängliga resurser. Därför får den inte innehålla någon framtida teknik.
Den utformade algoritmen måste vara oberoende av språket, det vill säga den måste bestå av enkla instruktioner som kan implementeras på vilket programmeringsspråk som helst och resultatet är dock alltid detsamma som förväntat.
Det finns alltid olika sätt att utföra en specifik operation inom ett program. Därför försöker programmerare skapa så effektiva algoritmer som möjligt..
Med användning av mycket effektiva algoritmer kan det garanteras att programmen körs i högsta hastighet, med ett minimum av systemresurser.
Algoritmer produceras dock inte alltid perfekt första gången. Av denna anledning vill utvecklare förbättra dem för att inkludera dem i framtida programuppdateringar..
Därför, när en ny version av en applikation med bättre prestanda är känd, betyder det att den här versionen innehåller effektivare algoritmer.
Algoritmen är ett extremt användbart instrument som används för att utföra arbete. Att välja den bästa algoritmen i datorer säkerställer att datorn utför den givna uppgiften på bästa möjliga sätt.
Därför tjänar det till att optimera ett datorprogram med tillgängliga resurser. Det vill säga när du bestämmer dig för att lösa ett problem genom de bästa algoritmerna, vill du ha den bästa kombinationen av programhastighet och lägre minnesförbrukning.
De olika algoritmer som kan studeras är lika olika som de problem de löser. Det är dock mycket troligt att problemet du försöker lösa liknar ett annat problem i vissa avseenden..
Genom att förstå ett brett spektrum av algoritmer kan du välja det som passar bäst för ett problem och tillämpa det korrekt.
Dessa algoritmer är specifikt inställda och optimerade för de typer av filer de riktar in sig på. Till exempel använder varje ljudformat olika sätt att lagra data. När den avkodas av ljudkodeken genererar den en ljudfil som liknar den ursprungliga vågformen.
Algoritmer används också för att skydda data eller kommunikationslinjer. Istället för att lagra komprimerad data så att den använder mindre diskutrymme lagras den på ett sätt som andra program inte kan upptäcka den. När data krypteras ser det som lagras inte ut som det som är.
För att få en dator att göra något måste du skriva ett datorprogram. För att skriva detta program måste du berätta för datorn steg för steg vad du vill att den ska göra.
Datorn kör sedan programmet och utför varje instruktion automatiskt för att uppnå det slutliga resultatet. Förutom att ange vad du ska göra med datorn kan du också välja hur den ska göra det, genom algoritmen, som är den grundläggande tekniken som används för att utföra arbetet.
Låt oss säga att du har en vän som anländer till flygplatsen och måste åka från flygplatsen till vårt hus. Dessa är fyra olika algoritmer som kan ges för att lösa denna situation:
- När planet kommer, ring min mobiltelefon.
- Möt mig utanför bagageanmälningsområdet.
- Gå till taxistationen.
- Gå in i en taxi.
- Ge föraren min adress.
- Lämna buss nummer 70.
- När du kommer till Main Street, ta buss 14.
- Gå av på Elmo Street.
- Gå två kvarter norrut till mitt hus.
- Ta en buss till den plats där de hyr bilar.
- Hyr ett fordon.
- Följ GPS-instruktionerna för att komma till mitt hus.
Alla fyra algoritmer uppnår exakt samma mål, men var och en gör det på olika sätt. Varje algoritm har också olika kostnad och restid. Därför väljs algoritmen efter omständigheterna.
Algoritmen måste ha vissa resurser för att kunna läsa värdena från en extern källa. De flesta algoritmer kräver vissa datavärden för att definiera ett specifikt problem. Till exempel koefficienterna för ett polynom.
Algoritmen måste ha vissa resurser för att kunna utföra aritmetiska beräkningar, jämförelser, kontrollera logiska förhållanden etc..
Algoritmen måste ha vissa medel för att kunna välja mellan två eller flera möjliga handlingsmetoder, baserat på initial data, användarinmatning och / eller beräknade resultat..
Algoritmen måste ha vissa medel för att kunna utföra en uppsättning instruktioner upprepade gånger, antingen för ett fast antal gånger eller tills något logiskt villkor är uppfyllt.
Algoritmen måste ha vissa resurser för att kunna informera användaren om de resultat den har beräknat, eller för att kunna begära ytterligare data från användaren.
Denna algoritm är väldigt intressant, eftersom den kallar sig med ett annat värde som en ingångsparameter, som den fick efter att ha löst den tidigare ingångsparametern. Det vill säga det kallar sig upprepade gånger tills problemet är löst.
Problem som Tower of Hanoi eller den djupa sökningen i en graf kan enkelt lösas med dessa typer av algoritmer..
I dessa algoritmer är den uppdelad i två delar. I den första delen är det aktuella problemet uppdelat i mindre delproblem av samma typ. På samma sätt löses dess delproblem i den andra delen och sedan kombineras båda delarna för att producera den slutliga lösningen på problemet..
Med dessa algoritmer kan du till exempel utföra kombinationssorter och snabba sorteringar.
Dessa algoritmer fungerar genom att komma ihåg resultaten från föregående körning och använda dem för att hitta nya resultat. De löser komplexa problem genom att dela upp dem i flera enkla delproblem och sedan lösa var och en av dem och lagra dem senare för senare användning..
Denna algoritm söker blint efter alla möjliga lösningar för att hitta en eller flera lösningar som kan lösa en funktion. Du kan tänka dig brute force som att använda alla möjliga kombinationer av siffror för att öppna ett kassaskåp..
Denna algoritm löser problem rekursivt och försöker lösa ett problem genom att lösa varje del av det. Om lösningen misslyckas tas den bort och spåras för att hitta en annan lösning.
Det vill säga, denna algoritm löser ett delproblem, men om detta inte löser det totala problemet, ångrar det det sista steget och börjar igen för att hitta lösningen på problemet..
Denna pseudokod hittar faktorn för ett icke-negativt heltal "N" med en rekursionsalgoritm:
Fibonacci-sekvensen är ett bra exempel på en dynamisk programmeringsalgoritm. Du kan se det i den här pseudokoden:
- Om (N = 0 eller N = 1) är Fibonacci (N) = 0
- Om inte, Fibonacci (N) = Fibonacci (N-1) + Fibonacci (N-2)
De 8 drottningarnas schackproblem är ett bra exempel. Detta problem fastställer att det finns åtta drottningstycken på ett schackbräde och de måste placeras på ett sådant sätt att ingen av drottningarna är i stånd att attackera någon annan efter att de är organiserade..
- Algoritm för HIV-diagnos.
- Sökmotorer på Internet använder egna algoritmer för att visa de mest relevanta resultaten från deras sökindex för specifika frågor..
- Recept, som matematiska ekvationer, är algoritmer.
- E-post vet var du ska skicka tack vare algoritmer.
- Innehållet som ses på sociala nätverk kommer via algoritmer. Faktum är att allt som görs på webben är en produkt av algoritmer.
- Videospel är algoritmisk berättande.
- Smartphone-appar är bara algoritmer.
- De flesta finansiella transaktioner utförs med algoritmer.
- Varje gång en kolumn sorteras i ett kalkylblad ingriper algoritmer.
Ingen har kommenterat den här artikeln än.