Vad är algoritm

Vi har tills nu mer eller mindre haft möjlighet att veta om ovanämnda begreppet inom olika område. Det är särskilt intressant att nämna att algoritm primärt kopplas till matematik, där den först inleddes under 1700-talet. Konkreta uttrycket inleddes egentligen av persiske matematiker al-Khwarizmi och målet var att enklare beskriva hur man bör räkna decimala tal. Begreppet kommer faktiskt från efternamnet på ovannämnda matematikern och idag kopplas det mindre till matematik och mer till datavetenskap.

Algoritm är inom datavetenskap en mängd instruktioner som bör utföras på konkret enhet dvs. inom visst program. Det underförstås att nästan varje algoritm måste vara väldefinierad resp. man bör ange absolut varje steg enligt regler.

Vi påpekar särskilt att det inte finns definition av begreppet som anses vara den enda rätta definitionen, och en av definitionerna som man kan höra är att algoritm är precist definierade metoder som bör leda till mål som klart definierades. Det finns också definition att algoritm är mängd konkreta aktioner, med precis bestämd ordning när det gäller deras utförande som bör tillämpas på precis bestämd data för att uppnå önskade resultat. Det finns naturligtvis många möjligheter hur begreppet kan definieras, men de alla har samma poäng och den gäller alla operationer man bör utföra för att realisera mål som man i förväg beslutade om.

För att vi kan säga att viss algoritm har kvalitet, är det nödvändigt att ta hand om 5 regler när vi skapar den. Först och främst bör man följa regel som gäller definiering och det innebär att absolut varje segment som omfattas av den måste klart bestäms så att det inte finns tvetydighet. Sedan bör man ta hänsyn till regel om ändlighet, dvs. ta hänsyn till att det finns exakt antal definierade segment resp. steg som ska leda till definitivt utförande av konkret algoritm. Tredje regel som man också bör följa när skapar viss algoritm gäller hur viktig det är att definiera antal indata och utdata, men det är också viktigt att man tar hänsyn till algoritms genomförbarhet. Vad vi menar är att det är nödvändigt att operationen för vilken algoritm skapas avslutas inom en viss period. Den sista regeln som bidrar till att man skiljer mellan högkvalitativ algoritm och de andra är dess resultat eftersom om det inte adekvat kan svara på ursprungliga kravet, kan det inte anses vara effektivt.

Begreppet struktur av algoritmer kan ofta ses i datavetenskap, medan dess andra namn är programsstruktur och begreppet definieras egentligen som grupp av visst antal kommando av programsspråk. Uppdelningen av de strukturerna är i något grad mer komplicerad, men det finns vanligen 3 grundläggande sätt att dela dem och det gäller linjär, cyklisk och förgrenad struktur. Det underförstås att varje av dem har sina egna drag samt att de tillämpas i olika situationer.

Programspråk Cobol och Fortran eller Algol anses vara programspråk som används för bland annat algoritmer, och deras huvudsyfte är att presentera dvs. beskriva sättet hur att lösa visst problem som presenterades av konkret algoritm. Algoritmer kan presenteras genom att använda något programspråk men också med hjälp av diagram, dvs. grafiskt men också på andra sätt som uteslutande beror på deras tillämpningsområde.

Det finns flera principer hur man kan indela algoritm, men de principerna leder ofta till dispyt mellan IT experter. Man kan ofta höra att den mest spridda indelningen är enligt vetenskapsteori som används för utveckling av konkret algoritm resp. enligt egenskaper av modell som då tillämpas. I praktik indelas de enligt verksamhetsområde, samt enligt tillämpningsområde, men också enligt komplexitet.