Algoritmer (algorithms) Flashcards

1
Q

Definiera begreppet algoritm.

A

En algoritm är otvetydliga instruktioner skriva i ordnad följd som är utförbara och kan slutföras.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Vad är rekursion?

A

En repetition genom att en funktion anropar sig själv.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Varför är binär sökning bättre än sekventiell sökning på sorterad data?

A

Med binär sökning växer antalet steg logaritmiskt med antalet poster medans sekventiell ökar linjärt. Vilket innebär att binärsökning är betydligt effektivare.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Vad är det minsta antal gånger som satserna i en loop body utförs i en iteration med post-test-villkor?

A

Minst en gång.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Är det skillnad på iteration och rekursion när det gäller användning av minne?

A

Ja! Varje anrop i en rekursion kräver extra minne, då varje anrop kräver eget minne.
I en iteration krävs inget extra minne då samma minne används för varje varv.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Beskriv Pseudo code.

A

Ett beskrivningssystem för algortimer där koden inte är skriven lika formellt som i ett riktigt programmeringsspråk.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Kan alla Algoritmer beskrivas med ett flow-chart?

A

Ja. Rektanglar och romber beskriver exekverbara steg medans pilar beskriver sekvenser och loopar. Det är allt som behövs för att beskriva varje tänkbar algoritm.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Är ett programmeringsspråk, t.ex. Python, lämpligt för att beskriva algoritmer? Motivera ditt svar!

A

Ja och nej.

Ja, för att programmeringsspråk har väldefinierade primitiv och regler för hur primitiven kan
kombineras.

Nej, för att programmeringsspråk kräver att man specificerar många detaljer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Vad är det minsta antalet gånger som satserna i en loop-kropp (loop body) utförs i en iteration med
pre-test-villkor?

A

0

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Vad är skillnaden mellan en algoritm och ett program?

A

Ett program är en algoritm kodad på så vis att en dator kan exekvera den.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Vilka två metoder innehåller Software verification?

A

Static Verification/Code analysis och Testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Det finns tre olika typer av fel;
Syntactic error
Runtime error
Logic error

Vilket är mest respektive minst allvarligt och varför?

A

Det mest allvarliga är logiska error. Dessa ger inget felmeddelande i kompilatorn och trots att resultatet kan se rätt ut så kan det finnas logiska fel.

Minst allvarliga är syntaktiska(syntactic) errors. Dessa upptäcks av kompilatorn.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Vad är Primitives?

A

Väldefinierade byggblock som algoritmiska representationer kan byggas av.

Primitives - a well-defined set of building blocks from which algoritm representations can be constructed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly