IDSV - Chapter 5 - Algorithms Flashcards

(25 cards)

1
Q

Vad är en algoritm?

A

En algoritm är en uppsättning av steg som beskriver hur en uppgift ska göras

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

Vilka fyra krav måste en algoritm uppfylla?

A
  • Ordning
  • Exekverbara steg
  • Otvetydighet
  • Terminering
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Vad innebär ‘Ordning’ i en algoritm?

A

Stegen ska ha en bestämd struktur och utföras i en specifik ordning

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

Vad betyder ‘Exekverbara steg’?

A

Varje steg måste gå att utföra, exempelvis kan inte ett steg vara omöjligt

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

Vad innebär ‘Otvetydighet’ i en algoritm?

A

Stegen ska vara tydliga och inte öppna för tolkning

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

Vad är ‘terminering’ i samband med algoritmer?

A

Algoritmen måste leda till ett slutresultat

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

Vad är skillnaden mellan algoritm, program och process?

A
  • Algoritm = Idén
  • Program = Algoritmen skriven i kod
  • Process = När programmet körs
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Vad är ‘primitiver’ i datavetenskap?

A

De minsta byggstenarna för att beskriva algoritmer

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

Vad är pseudokod?

A

En enkel och lättläst beskrivning av en algoritm som liknar riktig kod

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

Ge ett exempel på en pseudokodstruktur

A
  • Tilldelning
  • Villkor (if/else)
  • Loopar (while)
  • Funktioner
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Vad är syftet med pseudokod?

A

Att förklara algoritmer utan att blanda in syntaxfel

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

Vad är en flödesschema?

A

Ett diagram med symboler som visualiserar processen i en algoritm

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

Vad är en rekursiv struktur?

A

En funktion som anropar sig själv för att lösa en del av problemet

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

Vad är binär sökning?

A

En rekursiv metod för att söka i en sorterad lista genom att halvera listan

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

Vad är viktigt att ha i åtanke vid rekursion?

A

Termineringsvillkor (base case) för att undvika oändlig rekursion

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

Vad beskriver algoritmeffektivitet?

A

Hur snabbt en algoritm arbetar

17
Q

Vad är skillnaden mellan sekventiell och binär sökning?

A

Sekventiell sökning kontrollerar varje element; binär sökning halverar listan

18
Q

Vad är big-theta notation?

A

En notation som beskriver algoritmers växt

19
Q

Vad är preconditions i programverifiering?

A

Villkor som måste vara sanna innan programmet startar

20
Q

Vad betyder postconditions?

A

Villkor som ska vara sanna efter programmet körts

21
Q

Vad är en loop invariant?

A

Ett påstående som alltid är sant vid varje iteration av en loop

22
Q

Rekursion kan användas för att göra vad?

A

Att lösa problem genom att dela upp dem i mindre delar

23
Q

Vad är en vanlig strategi för problemlösning?

A
  • Arbeta baklänges
  • Dela upp problemet
  • Hitta liknande problem
24
Q

Vad innebär ‘effektivitet’ i algoritmer?

A

Algoritmer kan vara snabba eller långsamma beroende på strategi

25
Vad är viktigt för korrekthet i program?
Att bevisa att programmet alltid gör rätt, inte bara testa det