Analyse af ombytningspuslespil

Størrelse: px
Starte visningen fra side:

Download "Analyse af ombytningspuslespil"

Transkript

1 Analyse af ombytningspuslespil 1 / 7

2 Konkret eksempel på algoritmeanalyse Prøv ombytningspuslespillet på kurset webside. 2 / 7

3 Konkret eksempel på algoritmeanalyse Prøv ombytningspuslespillet på kurset webside. Spørgsmål: Hvilken bedste (laveste) score kan du opnå på 5 forsøg? 2 / 7

4 Konkret eksempel på algoritmeanalyse Prøv ombytningspuslespillet på kurset webside. Spørgsmål: Hvilken bedste (laveste) score kan du opnå på 5 forsøg? Hvilken algoritme bruger du? 2 / 7

5 Konkret eksempel på algoritmeanalyse Prøv ombytningspuslespillet på kurset webside. Spørgsmål: Hvilken bedste (laveste) score kan du opnå på 5 forsøg? Hvilken algoritme bruger du? Kan du sige noget om bedste og værste køretid for din algoritme for puslespil med n brikker? 2 / 7

6 Konkret eksempel på algoritmeanalyse Prøv ombytningspuslespillet på kurset webside. Spørgsmål: Hvilken bedste (laveste) score kan du opnå på 5 forsøg? Hvilken algoritme bruger du? Kan du sige noget om bedste og værste køretid for din algoritme for puslespil med n brikker? Afhænger det af input (startopstillingen)? 2 / 7

7 Konkret eksempel på algoritmeanalyse Prøv ombytningspuslespillet på kurset webside. Spørgsmål: Hvilken bedste (laveste) score kan du opnå på 5 forsøg? Hvilken algoritme bruger du? Kan du sige noget om bedste og værste køretid for din algoritme for puslespil med n brikker? Afhænger det af input (startopstillingen)? Er køretiden relateret til antal brikker, som står rigtigt til at starte med? 2 / 7

8 Konkret eksempel på algoritmeanalyse Prøv ombytningspuslespillet på kurset webside. Spørgsmål: Hvilken bedste (laveste) score kan du opnå på 5 forsøg? Hvilken algoritme bruger du? Kan du sige noget om bedste og værste køretid for din algoritme for puslespil med n brikker? Afhænger det af input (startopstillingen)? Er køretiden relateret til antal brikker, som står rigtigt til at starte med? Er den grådige algoritme (sæt én på plads i hvert skridt) bedst mulig, eller kan man få flere skridt hvor to sættes på plads ved nogle gange at undlade at sætte een på plads? 2 / 7

9 Konkret eksempel på algoritmeanalyse Prøv ombytningspuslespillet på kurset webside. Spørgsmål: Hvilken bedste (laveste) score kan du opnå på 5 forsøg? Hvilken algoritme bruger du? Kan du sige noget om bedste og værste køretid for din algoritme for puslespil med n brikker? Afhænger det af input (startopstillingen)? Er køretiden relateret til antal brikker, som står rigtigt til at starte med? Er den grådige algoritme (sæt én på plads i hvert skridt) bedst mulig, eller kan man få flere skridt hvor to sættes på plads ved nogle gange at undlade at sætte een på plads? Hvis grådig er bedst mulig, er der andre algoritmer som er lige så gode (eller skal man sætte én på plads hver gang for at være bedste mulig)? 2 / 7

10 Konkret eksempel på algoritmeanalyse Prøv ombytningspuslespillet på kurset webside. Spørgsmål: Hvilken bedste (laveste) score kan du opnå på 5 forsøg? Hvilken algoritme bruger du? Kan du sige noget om bedste og værste køretid for din algoritme for puslespil med n brikker? Afhænger det af input (startopstillingen)? Er køretiden relateret til antal brikker, som står rigtigt til at starte med? Er den grådige algoritme (sæt én på plads i hvert skridt) bedst mulig, eller kan man få flere skridt hvor to sættes på plads ved nogle gange at undlade at sætte een på plads? Hvis grådig er bedst mulig, er der andre algoritmer som er lige så gode (eller skal man sætte én på plads hver gang for at være bedste mulig)? Mere generelt, kan vi præcist karakterisere de bedst mulige algoritmer? 2 / 7

11 Model af puslespil Vi modellerer brikkerne i et puslespil som tallene 1, 2, 3,..., n, nummereret efter opstillingen når puslespillet er løst: / 7

12 Model af puslespil Vi modellerer brikkerne i et puslespil som tallene 1, 2, 3,..., n, nummereret efter opstillingen når puslespillet er løst: NB: dette kan også ses som et array: Dette gør vi til opgavetimerne (i Java-opgaverne) 3 / 7

13 Model af puslespil Vi modellerer brikkerne i et puslespil som tallene 1, 2, 3,..., n, nummereret efter opstillingen når puslespillet er løst: NB: dette kan også ses som et array: Dette gør vi til opgavetimerne (i Java-opgaverne) En opstilling af tallene 1, 2, 3,..., n i et array af længde n kaldes også en permutation. 3 / 7

14 Den grådige algoritme WHILE ikke alle brikker på plads: vælg en brik ikke på plads byt den med brikken på dens plads 4 / 7

15 Den grådige algoritme WHILE ikke alle brikker på plads: vælg en brik ikke på plads byt den med brikken på dens plads For et puslespil med n brikker, hvad er det maksimale antal ombytninger? 4 / 7

16 Den grådige algoritme WHILE ikke alle brikker på plads: vælg en brik ikke på plads byt den med brikken på dens plads For et puslespil med n brikker, hvad er det maksimale antal ombytninger? For hver ombytning: mindst én brik kommer på plads, og ingen brik forlader dens plads. Derfor maksimalt n ombytninger. 4 / 7

17 Den grådige algoritme WHILE ikke alle brikker på plads: vælg en brik ikke på plads byt den med brikken på dens plads For et puslespil med n brikker, hvad er det maksimale antal ombytninger? For hver ombytning: mindst én brik kommer på plads, og ingen brik forlader dens plads. Derfor maksimalt n ombytninger. For et puslespil med n brikker, hvoraf k allerede står på plads, hvad er det maksimale antal ombytninger? 4 / 7

18 Den grådige algoritme WHILE ikke alle brikker på plads: vælg en brik ikke på plads byt den med brikken på dens plads For et puslespil med n brikker, hvad er det maksimale antal ombytninger? For hver ombytning: mindst én brik kommer på plads, og ingen brik forlader dens plads. Derfor maksimalt n ombytninger. For et puslespil med n brikker, hvoraf k allerede står på plads, hvad er det maksimale antal ombytninger? For hver ombytning: mindst én brik kommer på plads, og ingen brik forlader dens plads. Derfor maksimalt n k ombytninger. 4 / 7

19 Den grådige algoritme WHILE ikke alle brikker på plads: vælg en brik ikke på plads byt den med brikken på dens plads For et puslespil med n brikker, hvad er det maksimale antal ombytninger? For hver ombytning: mindst én brik kommer på plads, og ingen brik forlader dens plads. Derfor maksimalt n ombytninger. For et puslespil med n brikker, hvoraf k allerede står på plads, hvad er det maksimale antal ombytninger? For hver ombytning: mindst én brik kommer på plads, og ingen brik forlader dens plads. Derfor maksimalt n k ombytninger. For et puslespil med n brikker, hvoraf k allerede står på plads, hvad er det minimale antal ombytninger? 4 / 7

20 Den grådige algoritme WHILE ikke alle brikker på plads: vælg en brik ikke på plads byt den med brikken på dens plads For et puslespil med n brikker, hvad er det maksimale antal ombytninger? For hver ombytning: mindst én brik kommer på plads, og ingen brik forlader dens plads. Derfor maksimalt n ombytninger. For et puslespil med n brikker, hvoraf k allerede står på plads, hvad er det maksimale antal ombytninger? For hver ombytning: mindst én brik kommer på plads, og ingen brik forlader dens plads. Derfor maksimalt n k ombytninger. For et puslespil med n brikker, hvoraf k allerede står på plads, hvad er det minimale antal ombytninger? For hver ombytning: højst to brik kommer på plads. Derfor mindst (n k)/2 ombytninger. 4 / 7

21 Kredse Bedre analyse end mellem (n k)/2 og n k ombytninger? 5 / 7

22 Kredse Bedre analyse end mellem (n k)/2 og n k ombytninger? Observation: en permutation giver på naturlig måde anledning til en samling kredse (engelsk: cycles): A B C D Figur 2: Et puslespil hvor brikkerne udgør 4 cykler A, B, C, og D. Idé: Et tal (brik) t peger på det tal (brik), som står på plads t. evis. Lad de to brikker der byttes om være x og y, og antag de er placeret på henholdsv elterne f 1 og f 2, og at deres korrekte placering er på henholdsvis f 3 og f 4 (hvor muligvis f 3 5 / 7 og/eller f = f ). De to tilfælde er illustreret i nedenstående figur. Ombytningen i samm

23 Kredse og ombytninger 6 / 7

24 Kredse og ombytninger Bevis. Lad de to brikker der byttes om være x og y, og antag de er placeret på henholdsvis felterne f 1 og f 2, og at deres korrekte placering er på henholdsvis f 3 og f 4 (hvor muligvis f 3 = Observation: En ombytning af to brikker i samme kreds øger antal kredse f 2 og/eller f 4 = f 1 ). De to tilfælde er illustreret i nedenstående figur. Ombytningen i samme medcykel præcis svarerén. til aten gå fra ombytning venstre modafhøjre, to brikker hvor en cykel i forskellige deles i to cyklere. kredseombytningen mindsker antal mellem kredse to forskellige med præcis cykler svarer én: til at gå fra højre mod venstre, hvor to cykler sættes sammen til en cykel. f 4 y f 2 ombyt(x, y) f 4 f 2 x x f 3 f 1 ombyt(x, y) y f 1 f 3 Lemma 5 Algoritmen kræver præcis n k ombytninger for at løse et puslespil med n brikker og k cykler i starten. Bevis. Da algoritmen altid ombytter to brikker fra samme cykel (y kommer umiddelbart efter x i cyklen), øger hver ombytning antallet af cykler med én (Lemma 4). Da man starter med k cykler og slutter med n cykler (Lemma 3) foretages der præcis n k ombytninger. Sætning 1 For at løse et puslespil med n brikker og k cykler i starten kræves præcis n k ombytninger. Bevis. At n k ombytninger er tilstrækkeligt (en øvre grænse) følger af Lemma 5. At man ikke kan gøre det med færre ombytninger (en nedre grænse) følger af at ingen ombytning kan forøge antallet af cykler med mere end én (Lemma 4), og at man skal starte og slutte med 6 / 7

25 Kredse og ombytninger Bevis. Lad de to brikker der byttes om være x og y, og antag de er placeret på henholdsvis felterne f 1 og f 2, og at deres korrekte placering er på henholdsvis f 3 og f 4 (hvor muligvis f 3 = Observation: En ombytning af to brikker i samme kreds øger antal kredse f 2 og/eller f 4 = f 1 ). De to tilfælde er illustreret i nedenstående figur. Ombytningen i samme medcykel præcis svarerén. til aten gå fra ombytning venstre modafhøjre, to brikker hvor en cykel i forskellige deles i to cyklere. kredseombytningen mindsker antal mellem kredse to forskellige med præcis cykler svarer én: til at gå fra højre mod venstre, hvor to cykler sættes sammen til en cykel. f 4 y f 2 ombyt(x, y) f 4 f 2 x x f 3 f 1 ombyt(x, y) Observation: En brik er på den rigtige plads brik er i en kreds af længde én. Lemma 5 Algoritmen kræver præcis n k ombytninger for at løse et puslespil med n brikker og k cykler i starten. Bevis. Da algoritmen altid ombytter to brikker fra samme cykel (y kommer umiddelbart efter x i cyklen), øger hver ombytning antallet af cykler med én (Lemma 4). Da man starter med k cykler og slutter med n cykler (Lemma 3) foretages der præcis n k ombytninger. y f 1 f 3 Sætning 1 For at løse et puslespil med n brikker og k cykler i starten kræves præcis n k ombytninger. Bevis. At n k ombytninger er tilstrækkeligt (en øvre grænse) følger af Lemma 5. At man ikke kan gøre det med færre ombytninger (en nedre grænse) følger af at ingen ombytning kan forøge antallet af cykler med mere end én (Lemma 4), og at man skal starte og slutte med 6 / 7

26 Kredse og ombytninger Bevis. Lad de to brikker der byttes om være x og y, og antag de er placeret på henholdsvis felterne f 1 og f 2, og at deres korrekte placering er på henholdsvis f 3 og f 4 (hvor muligvis f 3 = Observation: En ombytning af to brikker i samme kreds øger antal kredse f 2 og/eller f 4 = f 1 ). De to tilfælde er illustreret i nedenstående figur. Ombytningen i samme medcykel præcis svarerén. til aten gå fra ombytning venstre modafhøjre, to brikker hvor en cykel i forskellige deles i to cyklere. kredseombytningen mindsker antal mellem kredse to forskellige med præcis cykler svarer én: til at gå fra højre mod venstre, hvor to cykler sættes sammen til en cykel. f 4 y f 2 ombyt(x, y) f 4 f 2 x x f 3 f 1 ombyt(x, y) Observation: En brik er på den rigtige plads brik er i en kreds af længde én. Lemma 5 Algoritmen kræver præcis n k ombytninger for at løse et puslespil med n brikker og k cykler i starten. Derfor: puslespil løst der er n kredse. Bevis. Da algoritmen altid ombytter to brikker fra samme cykel (y kommer umiddelbart efter x i cyklen), øger hver ombytning antallet af cykler med én (Lemma 4). Da man starter med k cykler og slutter med n cykler (Lemma 3) foretages der præcis n k ombytninger. y f 1 f 3 Sætning 1 For at løse et puslespil med n brikker og k cykler i starten kræves præcis n k ombytninger. Bevis. At n k ombytninger er tilstrækkeligt (en øvre grænse) følger af Lemma 5. At man ikke kan gøre det med færre ombytninger (en nedre grænse) følger af at ingen ombytning kan forøge antallet af cykler med mere end én (Lemma 4), og at man skal starte og slutte med 6 / 7

27 Kredse og ombytninger Bevis. Lad de to brikker der byttes om være x og y, og antag de er placeret på henholdsvis felterne f 1 og f 2, og at deres korrekte placering er på henholdsvis f 3 og f 4 (hvor muligvis f 3 = Observation: En ombytning af to brikker i samme kreds øger antal kredse f 2 og/eller f 4 = f 1 ). De to tilfælde er illustreret i nedenstående figur. Ombytningen i samme medcykel præcis svarerén. til aten gå fra ombytning venstre modafhøjre, to brikker hvor en cykel i forskellige deles i to cyklere. kredseombytningen mindsker antal mellem kredse to forskellige med præcis cykler svarer én: til at gå fra højre mod venstre, hvor to cykler sættes sammen til en cykel. f 4 y f 2 ombyt(x, y) f 4 f 2 x x f 3 f 1 ombyt(x, y) Observation: En brik er på den rigtige plads brik er i en kreds af længde én. Lemma 5 Algoritmen kræver præcis n k ombytninger for at løse et puslespil med n brikker og k cykler i starten. Derfor: puslespil løst der er n kredse. Bevis. Da algoritmen altid ombytter to brikker fra samme cykel (y kommer umiddelbart efter x i cyklen), øger hver ombytning antallet af cykler med én (Lemma 4). Da man starter med k cykler og slutter med n cykler (Lemma 3) foretages der præcis n k ombytninger. Konklusion: Et puslespil med n brikker og k kredse i startopstillingen kræver mindst n k ombytninger, og man kan altid gøre det med n k ombytninger (f.eks. via den grådige algoritme, som i hvert skridt deler en kreds af længde t i to kredse af længde t 1 og 1). Sætning 1 For at løse et puslespil med n brikker og k cykler i starten kræves præcis n k ombytninger. y f 1 f 3 Bevis. At n k ombytninger er tilstrækkeligt (en øvre grænse) følger af Lemma 5. At man ikke kan gøre det med færre ombytninger (en nedre grænse) følger af at ingen ombytning kan forøge antallet af cykler med mere end én (Lemma 4), og at man skal starte og slutte med 6 / 7

28 Kredse og ombytninger Bevis. Lad de to brikker der byttes om være x og y, og antag de er placeret på henholdsvis felterne f 1 og f 2, og at deres korrekte placering er på henholdsvis f 3 og f 4 (hvor muligvis f 3 = Observation: En ombytning af to brikker i samme kreds øger antal kredse f 2 og/eller f 4 = f 1 ). De to tilfælde er illustreret i nedenstående figur. Ombytningen i samme medcykel præcis svarerén. til aten gå fra ombytning venstre modafhøjre, to brikker hvor en cykel i forskellige deles i to cyklere. kredseombytningen mindsker antal mellem kredse to forskellige med præcis cykler svarer én: til at gå fra højre mod venstre, hvor to cykler sættes sammen til en cykel. f 4 y f 2 ombyt(x, y) f 4 f 2 x x f 3 f 1 ombyt(x, y) Observation: En brik er på den rigtige plads brik er i en kreds af længde én. Lemma 5 Algoritmen kræver præcis n k ombytninger for at løse et puslespil med n brikker og k cykler i starten. Derfor: puslespil løst der er n kredse. Bevis. Da algoritmen altid ombytter to brikker fra samme cykel (y kommer umiddelbart efter x i cyklen), øger hver ombytning antallet af cykler med én (Lemma 4). Da man starter med k cykler og slutter med n cykler (Lemma 3) foretages der præcis n k ombytninger. Konklusion: Et puslespil med n brikker og k kredse i startopstillingen kræver mindst n k ombytninger, og man kan altid gøre det med n k ombytninger (f.eks. via den grådige algoritme, som i hvert skridt deler en kreds af længde t i to kredse af længde t 1 og 1). Sætning 1 For at løse et puslespil med n brikker og k cykler i starten kræves præcis n k ombytninger. Konklusion: En algoritme bruger det optimale antal ombytninger (n k) hvis og kun hvis hver ombytning er med to brikker som er i samme kreds. Bevis. At n k ombytninger er tilstrækkeligt (en øvre grænse) følger af Lemma 5. At man ikke kan gøre det med færre ombytninger (en nedre grænse) følger af at ingen ombytning kan forøge antallet af cykler med mere end én (Lemma 4), og at man skal starte og slutte med y f 1 f 3 6 / 7

29 Forventet antal kredse Sætning (uden bevis her): Det forventede antal kredse i en tilfældig permutation er n H n = 1/i i=1 7 / 7

30 Ifølge Sætning 1 har vi at ikke alle puslespil kræver det samme antal ombytninger. Det afgørende er antallet af cykler i permutationen (omplaceringen) af brikkerne. Hvis permutationerne er tilfældige valgt således at alle permutationer er lige sandsynlige, så gælder nedenstående sætning. Det følger heraf at det forventede optimale antal ombytninger for et Forventet antal kredse Sætning (uden bevis her): Det forventede antal kredse i en tilfældig permutation tilfældigt puslespil er er n n 1 i=1 i. Sætning 2 Det forventede antal cykler i en tilfældig n permutation af n brikker er H n = 1/i n H n = i=1 i=1 Ved simulering (afprøvning, tilfældige permutationer) for H n = 64 ses følgende n ln n + γ + fordeling 1 af antallet af permutationer: 1 i. H n betegnes det n-te harmoniske tal og kan tilnærmelsesvis beskrives ved 2n 1 12 n n n 6 +, hvor γ = er Euler-Mascheroni konstanten. % antal cykler [Figur: Gerth Brodal] Figur 3: Fordelingen af antallet af cykler i tilfældige puslespil med 64 brikker. Det forventede antal cykler er H / 7

Analyse af ombytningspuslespil

Analyse af ombytningspuslespil Analyse af ombytningspuslespil 1 / 7 Konkret eksempel på algoritmeanalyse Prøv ombytningspuslespillet på kurset webside. Spørgsmål: Hvilken bedste (laveste) score kan du opnå på 5 forsøg? Hvilken algoritme

Læs mere

Algoritmer og Datastrukturer 1. Gerth Stølting Brodal Aarhus Universitet

Algoritmer og Datastrukturer 1. Gerth Stølting Brodal Aarhus Universitet Algoritmer og Datastrukturer 1 Gerth Stølting Brodal Aarhus Universitet Kursusbeskrivelsen Kursusbeskrivelsen: Algoritmer og datastrukturer 1 Formål Deltagerne vil efter kurset have indsigt i algoritmer

Læs mere

Algoritmer og Datastrukturer 1. Gerth Stølting Brodal

Algoritmer og Datastrukturer 1. Gerth Stølting Brodal Algoritmer og Datastrukturer 1 Gerth Stølting Brodal Kursusbeskrivelsen Kursusbeskrivelsen: Algoritmer og datastrukturer 1 Formål Deltagerne vil efter kurset have indsigt i algoritmer som model for sekventielle

Læs mere

Algoritmer og Datastrukturer 1. Gerth Stølting Brodal

Algoritmer og Datastrukturer 1. Gerth Stølting Brodal Algoritmer og Datastrukturer 1 Gerth Stølting Brodal Kursusbeskrivelsen Kursusbeskrivelsen: Algoritmer og datastrukturer 1 Formål Deltagerne vil efter kurset have indsigt i algoritmer som model for sekventielle

Læs mere

Rolf Fagerberg. Forår 2013

Rolf Fagerberg. Forår 2013 Forår 2013 Mål for i dag Dagens program: 1 2 3 4 5 6 Forudsætninger: DM536 og DM537 Timer: 50% forelæsninger, 50% øvelser Forudsætninger: DM536 og DM537 Eksamenform: Skriftlig eksamen: Timer: 50% forelæsninger,

Læs mere

Grundlæggende Algoritmer og Datastrukturer

Grundlæggende Algoritmer og Datastrukturer Grundlæggende Algoritmer og Datastrukturer Om kurset Grundlæggende Algoritmer og Datastrukturer Undervisningsformer Forelæsninger: 4 timer/uge (2+2). Øvelser: 3 timer/uge. Café. Obligatorisk program 13

Læs mere

Skriftlig Eksamen Algoritmer og Sandsynlighed (DM538)

Skriftlig Eksamen Algoritmer og Sandsynlighed (DM538) Skriftlig Eksamen Algoritmer og Sandsynlighed (DM538) Institut for Matematik og Datalogi Syddansk Universitet, Odense Fredag den 25. januar 2013 kl. 1013 Alle hjælpemidler (computer, lærebøger, notater,

Læs mere

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for

Læs mere

Sortering. Eksempel: De n tal i sorteret orden

Sortering. Eksempel: De n tal i sorteret orden Sortering 1 / 34 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 2 / 34 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden

Læs mere

Grafer og graf-gennemløb

Grafer og graf-gennemløb Grafer og graf-gennemløb Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges). Dvs. ordnede par af knuder. Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges).

Læs mere

Grafer og graf-gennemløb

Grafer og graf-gennemløb Grafer og graf-gennemløb Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges). Dvs. ordnede par af knuder. Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges).

Læs mere

Sommeren 2001, opgave 1

Sommeren 2001, opgave 1 Sommeren 2001, opgave 1 Vi antager at k 3, da det ellers er uklart hvordan trekanterne kan sættes sammen i en kreds. Vi ser nu at for hver trekant er der en knude i kredsen, og en spids. Derfor er n =

Læs mere

Invarianter og kombinatoriske beviser

Invarianter og kombinatoriske beviser Invarianter og kombinatoriske beviser Anders Nedergaard Jensen Institut for Matematik, Aarhus Universitet Matematiklærerdag, Aarhus, 24. Marts 2017 En invariant er en værdi/udsagn der forbliver konstant

Læs mere

Grafer og graf-gennemløb

Grafer og graf-gennemløb Grafer og graf-gennemløb Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges). Dvs. ordnede par af knuder. Figur: Terminologi: n = V, m = E (eller V og E (mis)bruges som V og E ).

Læs mere

Invarianter. Invariant: Et forhold, som vedligeholdes af algoritmen gennem (dele af) dens udførelse. Udgør ofte kernen af ideen bag algoritmen.

Invarianter. Invariant: Et forhold, som vedligeholdes af algoritmen gennem (dele af) dens udførelse. Udgør ofte kernen af ideen bag algoritmen. Invariant: Et forhold, som vedligeholdes af algoritmen gennem (dele af) dens udførelse. Udgør ofte kernen af ideen bag algoritmen. Invariant: Et forhold, som vedligeholdes af algoritmen gennem (dele af)

Læs mere

Sortering. Eksempel: De n tal i sorteret orden

Sortering. Eksempel: De n tal i sorteret orden Sortering 1 / 32 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 2 / 32 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden

Læs mere

Grafer og graf-gennemløb

Grafer og graf-gennemløb Grafer og graf-gennemløb Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges). Dvs. ordnede par af knuder. Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges).

Læs mere

Rolf Fagerberg. Forår 2015

Rolf Fagerberg. Forår 2015 Forår 2015 Dagens program 1 2 3 4 5 Underviser:, IMADA Forskningsområde: algoritmer og datastrukturer Underviser:, IMADA Forskningsområde: algoritmer og datastrukturer Deltagere: BA i Datalogi BA i Software

Læs mere

Sortering af information er en fundamental og central opgave.

Sortering af information er en fundamental og central opgave. Sortering Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 Mange opgaver er hurtigere i sorteret information (tænk på ordbøger, telefonbøger,

Læs mere

Grafer og graf-gennemløb

Grafer og graf-gennemløb Grafer og graf-gennemløb Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges). Dvs. ordnede par af knuder. Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges).

Læs mere

Rolf Fagerberg. Forår 2015

Rolf Fagerberg. Forår 2015 Forår 2015 Dagens program 1 2 3 4 5 Underviser:, IMADA Forskningsområde: algoritmer og datastrukturer Deltagere: BA i Datalogi BA i Software Engineering BA i Matematik-Økonomi BA i Anvendt Matematik BA

Læs mere

Sortering i lineær tid

Sortering i lineær tid Sortering i lineær tid Nedre grænse for sammenligningsbaseret sortering Nedre grænser kræver en præcis beregningsmodel. Nedre grænse for sammenligningsbaseret sortering Nedre grænser kræver en præcis beregningsmodel.

Læs mere

Sortering. De n tal i sorteret orden. Eksempel: Kommentarer:

Sortering. De n tal i sorteret orden. Eksempel: Kommentarer: Sortering Sortering Input: Output: n tal De n tal i sorteret orden Eksempel: Kommentarer: 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 Sorteret orden kan være stigende eller faldende. Vi vil i dette kursus

Læs mere

Sortering af information er en fundamental og central opgave.

Sortering af information er en fundamental og central opgave. Sortering 1 / 36 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 6, 9 Mange opgaver er hurtigere i sorteret information (tænk på ordbøger, telefonbøger,

Læs mere

Målet for disse slides er at beskrive nogle algoritmer og datastrukturer relateret til at gemme og hente data effektivt.

Målet for disse slides er at beskrive nogle algoritmer og datastrukturer relateret til at gemme og hente data effektivt. Merging og hashing Mål Målet for disse slides er at beskrive nogle algoritmer og datastrukturer relateret til at gemme og hente data effektivt. Dette emne er et uddrag af kurset DM507 Algoritmer og datastrukturer

Læs mere

.. if L(u) + w(u, v) < L(v) then.. begin... L(v) := L(u) + w(u, v)... F (v) := u.. end. med længde L(z)}

.. if L(u) + w(u, v) < L(v) then.. begin... L(v) := L(u) + w(u, v)... F (v) := u.. end. med længde L(z)} Procedure Dijkstra(G = (V, E): vægtet sh. graf,. a, z: punkter) { Det antages at w(e) > 0 for alle e E} For alle v V : L(v) := L(a) := 0, S := while z / S begin. u := punkt ikke i S, så L(u) er mindst

Læs mere

Skriftlig Eksamen DM507 Algoritmer og Datastrukturer

Skriftlig Eksamen DM507 Algoritmer og Datastrukturer Skriftlig Eksamen DM507 Algoritmer og Datastrukturer Institut for Matematik og Datalogi Syddansk Universitet, Odense Tirsdag den 24. juni 2014, kl. 10:00 14:00 Besvarelsen skal afleveres elektronisk. Se

Læs mere

Rolf Fagerberg. Forår 2014

Rolf Fagerberg. Forår 2014 Forår 2014 Mål for i dag Dagens program: 1 2 3 4 5 6 Forudsætninger: Format: Programmering og Diskret matematik I (forelæsninger), TE (øvelser), S (arbejde selv og i studiegrupper) Eksamenform: Skriftlig

Læs mere

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for

Læs mere

Algoritmedesign med internetanvendelser ved Keld Helsgaun

Algoritmedesign med internetanvendelser ved Keld Helsgaun Algoritmedesign med internetanvendelser ved Keld Helsgaun 1 Analyse af algoritmer Input Algoritme Output En algoritme er en trinvis metode til løsning af et problem i endelig tid 2 Algoritmebegrebet D.

Læs mere

Introduktion til DM507

Introduktion til DM507 Introduktion til DM507 Rolf Fagerberg Forår 2017 1 / 20 Hvem er vi? Underviser: Rolf Fagerberg, IMADA Forskningsområde: algoritmer og datastrukturer 2 / 20 Hvem er vi? Underviser: Rolf Fagerberg, IMADA

Læs mere

Videregående Algoritmik. Version med vejledende løsninger indsat!

Videregående Algoritmik. Version med vejledende løsninger indsat! Videregående Algoritmik DIKU, timers skriftlig eksamen, 1. april 009 Nils Andersen og Pawel Winter Alle hjælpemidler må benyttes, dog ikke lommeregner, computer eller mobiltelefon. Opgavesættet består

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Introduktion til kurset Rolf Fagerberg Forår 2019 1 / 20 Hvem er vi? Underviser: Rolf Fagerberg, Institut for Matematik og Datalogi (IMADA) Forskningsområde: algoritmer

Læs mere

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for

Læs mere

Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt.

Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt. Merging og hashing Mål Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt. Dette emne er et uddrag af kurset DM507 Algoritmer og datastrukturer (2. semester). Mål

Læs mere

Grådige algoritmer. Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Grådige algoritmer. Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Grådige algoritmer Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Læs mere

Rolf Fagerberg. Forår 2012

Rolf Fagerberg. Forår 2012 Forår 2012 Mål for i dag Dagens program: 1 2 3 4 5 6 Forudsætninger: DM502 og DM503 Timer: 50% forelæsninger, 50% øvelser Forudsætninger: DM502 og DM503 Eksamenform: Skriftlig eksamen: Timer: 50% forelæsninger,

Læs mere

Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel:

Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel: Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel: Opbyg løsningen skridt for skridt ved hele tiden af vælge lige

Læs mere

Algoritmeanalyse. Øvre grænse for algoritme. Øvre grænse for problem. Nedre grænse for problem. Identificer essentiel(le) operation(er)

Algoritmeanalyse. Øvre grænse for algoritme. Øvre grænse for problem. Nedre grænse for problem. Identificer essentiel(le) operation(er) Algoritmeanalyse Identificer essentiel(le) operation(er) Øvre grænse for algoritme Find øvre grænse for antallet af gange de(n) essentielle operation(er) udføres. Øvre grænse for problem Brug øvre grænse

Læs mere

Tilgang til data. To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (også kaldet key, nøgle) for dataelementer.

Tilgang til data. To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (også kaldet key, nøgle) for dataelementer. Merging og Hashing Tilgang til data To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (også kaldet key, nøgle) for dataelementer. API for sekventiel tilgang (API =

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2012 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 15. marts, 2012 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

Skriftlig Eksamen Algoritmer og sandsynlighed (DM538)

Skriftlig Eksamen Algoritmer og sandsynlighed (DM538) Skriftlig Eksamen Algoritmer og sandsynlighed (DM538) Institut for Matematik & Datalogi Syddansk Universitet Fredag den 9 Januar 2015, kl. 10 14 Alle sædvanlige hjælpemidler(lærebøger, notater etc.) samt

Læs mere

Algoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012. May 15, 2012

Algoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012. May 15, 2012 Algoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012 May 15, 2012 1 CONTENTS 2012 CONTENTS Contents 1 Kompleksitet 3 1.1 Køretid................................................ 3 1.2 Asymptotisk

Læs mere

Datastrukturer (recap)

Datastrukturer (recap) Dictionaries Datastrukturer (recap) Data: Datastruktur = data + operationer herpå En ID (nøgle) + associeret data. Operationer: Datastrukturens egenskaber udgøres af de tilbudte operationer (API for adgang

Læs mere

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti. Korteste veje Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. δ(u, v) = længden af en korteste

Læs mere

Sammenhængskomponenter i grafer

Sammenhængskomponenter i grafer Sammenhængskomponenter i grafer Ækvivalensrelationer Repetition: En relation R på en mængde S er en delmængde af S S. Når (x, y) R siges x at stå i relation til y. Ofte skrives x y, og relationen selv

Læs mere

P2-gruppedannelsen for Mat og MatØk

P2-gruppedannelsen for Mat og MatØk Institut for Matematiske Fag Aalborg Universitet Danmark 1-02-2012 Vejledere Bo Hove E-mail: bh@thisted-gymnasium.dk 3 Mat grupper (semesterkoordinator) E-mail: diego@math.aau.dk. Web page: http://people.math.aau.dk/~diego/

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet Eksamen 02105, F14 side 1 af 14 Danmarks Tekniske Universitet Skriftlig prøve, den 22. maj 2014. Kursusnavn: Algoritmer og datastrukturer 1 Kursusnummer: 02105 Hjælpemidler: Skriftlige hjælpemidler. Det

Læs mere

Algoritmer og invarianter

Algoritmer og invarianter Algoritmer og invarianter Iterative algoritmer Algoritmen er overordnet set een eller flere while eller for-løkker. Iterative algoritmer Algoritmen er overordnet set een eller flere while eller for-løkker.

Læs mere

Matematik og dam. hvordan matematik kan give overraskende resultater om et velkendt spil. Jonas Lindstrøm Jensen

Matematik og dam. hvordan matematik kan give overraskende resultater om et velkendt spil. Jonas Lindstrøm Jensen Matematik og dam hvordan matematik kan give overraskende resultater om et velkendt spil Jonas Lindstrøm Jensen (jonas@imf.au.dk) March 200 Indledning Det klassiske spil dam spilles på et almindeligt skakbræt.

Læs mere

Grundlæggende køretidsanalyse af algoritmer

Grundlæggende køretidsanalyse af algoritmer Grundlæggende køretidsanalyse af algoritmer Algoritmers effektivitet Størrelse af inddata Forskellige mål for køretid Store -notationen Klassiske effektivitetsklasser Martin Zachariasen DIKU 1 Algoritmers

Læs mere

Datastrukturer (recap)

Datastrukturer (recap) Dictionaries Datastrukturer (recap) Data: Datastruktur = data + operationer herpå En ID (nøgle) + associeret data. Operationer: Datastrukturens egenskaber udgøres af de tilbudte operationer (API for adgang

Læs mere

P (n): rekursiv beregning af f n kræver f n beregninger af f 1. P (n) er sand for alle n 2.

P (n): rekursiv beregning af f n kræver f n beregninger af f 1. P (n) er sand for alle n 2. P (n): rekursiv beregning af f n kræver f n beregninger af f 1. P (n) er sand for alle n 2. Bevis ved stærk induktion. Basisskridt: P (2) er sand og P (3) er sand. Induktionsskridt: Lad k 2 og antag P

Læs mere

DesignMat Kvadratiske matricer, invers matrix, determinant

DesignMat Kvadratiske matricer, invers matrix, determinant DesignMat Kvadratiske matricer, invers matrix, determinant Preben Alsholm Uge 5 Forår 010 1 Kvadratiske matricer, invers matrix, determinant 1.1 Invers matrix I Invers matrix I Definition. En n n-matrix

Læs mere

Skriftlig Eksamen Algoritmer og Datastrukturer (DM507)

Skriftlig Eksamen Algoritmer og Datastrukturer (DM507) Skriftlig Eksamen Algoritmer og Datastrukturer (DM507) Institut for Matematik og Datalogi Syddansk Universitet, Odense Onsdag den 0. juni 009, kl. 9 Alle sædvanlige hjælpemidler (lærebøger, notater, osv.)

Læs mere

Spilstrategier. 1 Vindermængde og tabermængde

Spilstrategier. 1 Vindermængde og tabermængde Spilstrategier De spiltyper vi skal se på her, er primært spil af følgende type: Spil der spilles af to spillere A og B som skiftes til at trække, A starter, og hvis man ikke kan trække har man tabt. Der

Læs mere

Matematisk modellering og numeriske metoder. Lektion 16

Matematisk modellering og numeriske metoder. Lektion 16 Matematisk modellering og numeriske metoder Lektion 16 Morten Grud Rasmussen 6. november, 2013 1 Interpolation [Bogens afsnit 19.3 side 805] 1.1 Interpolationspolynomier Enhver kontinuert funktion f på

Læs mere

Beat the Clock Sorteringsnetværk

Beat the Clock Sorteringsnetværk Aktivitet 8 Beat the Clock Sorteringsnetværk Resumé Selvom computer er hurtige, er der en grænse for, hvor hurtigt de kan løse et problem. En måde at speed e det op på er at bruge flere computere til at

Læs mere

Dynamisk programmering

Dynamisk programmering Dynamisk programmering Dynamisk programmering Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Har en hvis lighed med divide-and-conquer: Begge opbygger løsninger til større problemer

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2010 Projekt, del III Institut for matematik og datalogi Syddansk Universitet 24. april, 2010 (let justeret 10. maj og 21. maj 2010) Dette projekt udleveres i tre

Læs mere

Dynamisk programmering

Dynamisk programmering Dynamisk programmering Dynamisk programmering Optimeringsproblem: man ønsker at finde bedste den kombinatoriske struktur (struktur opbygget af et endeligt antal enkeltdele) blandt mange mulige. Eksempler:

Læs mere

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET INSTITUT FOR DTOI, RUS UNIVERSITET Science and Technology ESEN lgoritmer og Datastrukturer (00-ordning) ntal sider i opgavesættet (incl. forsiden): (elleve) Eksamensdag: Fredag den. juni 0, kl. 9.00-.00

Læs mere

Primtal - hvor mange, hvordan og hvorfor?

Primtal - hvor mange, hvordan og hvorfor? Johan P. Hansen 1 1 Institut for Matematiske Fag, Aarhus Universitet Gult foredrag, EULERs Venner, oktober 2009 Disposition 1 EUKLIDs sætning. Der er uendelig mange primtal! EUKLIDs bevis Bevis baseret

Læs mere

Nordisk Matematikkonkurrence Danmarks Matematiklærerforening Skoleåret 2010-2011 Opgaver ved semifinalen

Nordisk Matematikkonkurrence Danmarks Matematiklærerforening Skoleåret 2010-2011 Opgaver ved semifinalen Opgave 1 Sum af produkter i en trekant Antag at der i et koordinatsystem er en trekant hvis vinkelspidser ligger i punkterne ( 2, 1), (3, 3) og (4, 3). Find alle de punkter inden i trekanten hvis koordinater

Læs mere

Geometrisk skæring. Afgørelse af om der findes skæringer blandt geometriske objekter Bestemmelse af alle skæringspunkter

Geometrisk skæring. Afgørelse af om der findes skæringer blandt geometriske objekter Bestemmelse af alle skæringspunkter Planfejning 1 Skæring 2 Geometrisk skæring Afgørelse af om der findes skæringer blandt geometriske objekter Bestemmelse af alle skæringspunkter Løsningsmetoder: Rå kraft Planfejning (eng. plane sweep)

Læs mere

Om hypoteseprøvning (1)

Om hypoteseprøvning (1) E6 efterår 1999 Notat 16 Jørgen Larsen 11. november 1999 Om hypoteseprøvning 1) Det grundlæggende problem kan generelt formuleres sådan: Man har en statistisk model parametriseret med en parameter θ Ω;

Læs mere

Introduktion. Introduktion. Algoritmer og datastrukturer. Eksempel: Maksimalt tal

Introduktion. Introduktion. Algoritmer og datastrukturer. Eksempel: Maksimalt tal Philip Bille Algoritmer og datastrukturer Algoritmisk problem. Præcist defineret relation mellem input og output. Algoritme. Metode til at løse et algoritmisk problem. Beskrevet i diskrete og entydige

Læs mere

Statistik viden eller tilfældighed

Statistik viden eller tilfældighed MATEMATIK i perspektiv Side 1 af 9 DNA-analyser 1 Sandsynligheden for at en uskyldig anklages Følgende histogram viser, hvordan fragmentlængden for et DNA-område varierer inden for befolkningen. Der indgår

Læs mere

Introduktion. Algoritmer og datastrukturer Toppunkter Algoritme 1 Algoritme 2 Algoritme 3. Philip Bille

Introduktion. Algoritmer og datastrukturer Toppunkter Algoritme 1 Algoritme 2 Algoritme 3. Philip Bille Introduktion Algoritmer og datastrukturer Toppunkter Algoritme 1 Algoritme 2 Algoritme 3 Philip Bille Introduktion Algoritmer og datastrukturer Toppunkter Algoritme 1 Algoritme 2 Algoritme 3 Algoritmer

Læs mere

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti. Korteste veje Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. δ(u, v) = længden af en korteste

Læs mere

Mindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion

Mindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion Philip Bille Introduktion (MST). Udspændende træ af minimal samlet vægt. Introduktion (MST). Udspændende træ af minimal samlet vægt. 0 0 Graf G Ikke sammenhængende Introduktion (MST). Udspændende træ af

Læs mere

ØVEHÆFTE FOR MATEMATIK C FORMLER OG LIGNINGER

ØVEHÆFTE FOR MATEMATIK C FORMLER OG LIGNINGER ØVEHÆFTE FOR MATEMATIK C FORMLER OG LIGNINGER INDHOLDSFORTEGNELSE 0. FORMELSAMLING TIL FORMLER OG LIGNINGER... 2 Tal, regneoperationer og ligninger... 2 Isolere en ubekendt... 3 Hvis x står i første brilleglas...

Læs mere

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Skriftlig Eksamen Algoritmer og Datastrukturer (dads) Skriftlig Eksamen Algoritmer og Datastrukturer (dads) Datalogisk Institut Aarhus Universitet Tirsdag den 27. maj 2003, kl. 9.00 3.00 Opgave (25%) For konstanten π = 3.4592... gælder identiteten π 2 6 =

Læs mere

DATALOGISK INSTITUT, AARHUS UNIVERSITET

DATALOGISK INSTITUT, AARHUS UNIVERSITET DATALOGISK INSTITUT, AARHUS UNIVERSITET Det Naturvidenskabelige Fakultet EKSAMEN Grundkurser i Datalogi Antal sider i opgavesættet (incl. forsiden): 6 (seks) Eksamensdag: Onsdag den 11. august 2004, kl.

Læs mere

Mandags Chancen. En optimal spilstrategi. Erik Vestergaard

Mandags Chancen. En optimal spilstrategi. Erik Vestergaard Mandags Chancen En optimal spilstrategi Erik Vestergaard Spilleregler denne note skal vi studere en optimal spilstrategi i det spil, som i fjernsynet går under navnet Mandags Chancen. Spillets regler er

Læs mere

6. december. Motivation. Internettet: Login til DIKU (med password) Handel med dankort Fortrolig besked Digital signatur

6. december. Motivation. Internettet: Login til DIKU (med password) Handel med dankort Fortrolig besked Digital signatur 6. december Talteoretiske algoritmer, RSA kryptosystemet, Primtalstest Motivation Definitioner Euclids algoritme Udvidet Euclid RSA kryptosystemet Randominserede algoritmer Rabin-Miller primtalstest Svært

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2012 Projekt, del III Institut for matematik og datalogi Syddansk Universitet 29. april, 2012 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet Eksamen 0205, Forår 205 side af 5 Danmarks Tekniske Universitet Skriftlig prøve, den 22. maj 205. Kursusnavn: Algoritmer og datastrukturer Kursusnummer: 0205 Hjælpemidler: Skriftlige hjælpemidler. Det

Læs mere

1. Beregn sandsynligheden for at samtlige 9 klatter lander i felter med lige numre.

1. Beregn sandsynligheden for at samtlige 9 klatter lander i felter med lige numre. NATURVIDENSKABELIG GRUNDUDDANNELSE Københavns Universitet, 6. april, 2011, Skriftlig prøve Fysik 3 / Termodynamik Benyttelse af medbragt litteratur, noter, lommeregner og computer uden internetadgang er

Læs mere

Tilgang til data. To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (key, nøgle) for dataelementer.

Tilgang til data. To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (key, nøgle) for dataelementer. Merging og Hashing Tilgang til data To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (key, nøgle) for dataelementer. API for sekventiel tilgang (API = Application

Læs mere

Ugeseddel 4 1. marts - 8. marts

Ugeseddel 4 1. marts - 8. marts Ugeseddel 4 1. marts - 8. marts Læs følgende sider i kapitel 6 i lærebogen: s. 233 258 og s. 291 317 (afsnit 6.3 overspringes). Begynd at overveje, hvad afleveringsopgaven skal omhandle. Læs vejledningen,

Læs mere

DM517:Supplerende noter om uafgørlighedsbeviser:

DM517:Supplerende noter om uafgørlighedsbeviser: DM517:Supplerende noter om uafgørlighedsbeviser: Jørgen Bang-Jensen October 9, 2013 Abstract Formålet med denne note er at give en form for kogebogsopskrift på, hvorledes man bygger et uafgørlighedsbevis

Læs mere

Matematikken i kunstig intelligens Opgaver om koordinerende robotter

Matematikken i kunstig intelligens Opgaver om koordinerende robotter Matematikken i kunstig intelligens Opgaver om koordinerende robotter Thomas Bolander 2. juni 2018 Vejledning til opgaver Opgave 1 kan eventuelt springes over, hvis man har mindre tid. De resterende opgaver

Læs mere

Matematikken i kunstig intelligens Opgaver om koordinerende robotter LØSNINGER

Matematikken i kunstig intelligens Opgaver om koordinerende robotter LØSNINGER Matematikken i kunstig intelligens Opgaver om koordinerende robotter LØSNINGER Thomas Bolander 25. april 2018 Vejledning til opgaver Opgave 1 kan eventuelt springes over, hvis man har mindre tid. De resterende

Læs mere

STUDENTEREKSAMEN MATHIT PRØVESÆT MAJ 2007 2010 MATEMATIK A-NIVEAU. MATHIT Prøvesæt 2010. Kl. 09.00 14.00 STXA-MATHIT

STUDENTEREKSAMEN MATHIT PRØVESÆT MAJ 2007 2010 MATEMATIK A-NIVEAU. MATHIT Prøvesæt 2010. Kl. 09.00 14.00 STXA-MATHIT STUDENTEREKSAMEN MATHIT PRØVESÆT MAJ 007 010 MATEMATIK A-NIVEAU MATHIT Prøvesæt 010 Kl. 09.00 14.00 STXA-MATHIT Opgavesættet er delt i to dele. Delprøve 1: timer med autoriseret formelsamling Delprøve

Læs mere

Mindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion

Mindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion Philip Bille Introduktion (MST). Udspændende træ af minimal samlet vægt. Introduktion (MST). Udspændende træ af minimal samlet vægt. 0 0 Graf G Ikke sammenhængende Introduktion (MST). Udspændende træ af

Læs mere

28 Algoritmedesign. Noter. PS1 -- Algoritmedesign

28 Algoritmedesign. Noter. PS1 -- Algoritmedesign 28 Algoritmedesign. Algoritmeskabelon for Del og Hersk. Eksempler på Del og Hersk algoritmer. Binær søgning i et ordnet array. Sortering ved fletning og Quicksort. Maksimal delsums problem. Tætteste par

Læs mere

Mindste udspændende træ

Mindste udspændende træ Mindste udspændende træ Introduktion Repræsentation af vægtede grafer Egenskaber for mindste udspændende træer Prims algoritme Kruskals algoritme Philip Bille Mindste udspændende træ Introduktion Repræsentation

Læs mere

Orienterede grafer. Introduktion Repræsentation Søgning Topologisk sortering og DAGs Stærke sammenhængskomponenter Implicitte grafer.

Orienterede grafer. Introduktion Repræsentation Søgning Topologisk sortering og DAGs Stærke sammenhængskomponenter Implicitte grafer. Orienterede grafer Introduktion Repræsentation Søgning Topologisk sortering og DAGs Stærke sammenhængskomponenter Implicitte grafer Philip Bille Orienterede grafer Introduktion Repræsentation Søgning Topologisk

Læs mere

Skriftlig Eksamen DM507 Algoritmer og Datastrukturer

Skriftlig Eksamen DM507 Algoritmer og Datastrukturer Skriftlig Eksamen DM507 Algoritmer og Datastrukturer Institut for Matematik og Datalogi Syddansk Universitet, Odense Mandag den 6. juni 2016, kl. 15:00 19:00 Besvarelsen skal afleveres elektronisk. Se

Læs mere

Merging og Hashing (del I)

Merging og Hashing (del I) Merging og Hashing (del I) Tilgang til data To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (også kaldet key, nøgle) for dataelementer. API for sekventiel tilgang

Læs mere

Grafmanipulation. Frank Nasser. 14. april 2011

Grafmanipulation. Frank Nasser. 14. april 2011 Grafmanipulation Frank Nasser 14. april 2011 c 2008-2011. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Bemærk: Dette er

Læs mere

Statistik II 1. Lektion. Analyse af kontingenstabeller

Statistik II 1. Lektion. Analyse af kontingenstabeller Statistik II 1. Lektion Analyse af kontingenstabeller Kursusbeskrivelse Omfang 5 kursusgange (forelæsning + opgaveregning) 5 kursusgange (mini-projekt) Emner Analyse af kontingenstabeller Logistisk regression

Læs mere

Skriftlig Eksamen Beregnelighed (DM517)

Skriftlig Eksamen Beregnelighed (DM517) Skriftlig Eksamen Beregnelighed (DM517) Institut for Matematik & Datalogi Syddansk Universitet Torsdag den 1 November 212, kl. 1 14 Alle sædvanlige hjælpemidler (lærebøger, notater etc.) samt brug af computer

Læs mere

Eksamen i Diskret Matematik

Eksamen i Diskret Matematik Eksamen i Diskret Matematik Første Studieår ved Det Teknisk-Naturvidenskabelige Fakultet 10. juni, 2016. Kl. 9-13. Nærværende eksamenssæt består af 11 nummererede sider med ialt 16 opgaver. Alle opgaver

Læs mere

Broer, skak og netværk Carsten Thomassen: Naturens Verden 10, 1992, s. 388-393.

Broer, skak og netværk Carsten Thomassen: Naturens Verden 10, 1992, s. 388-393. Broer, skak og netværk Side 1 af 6 Broer, skak og netværk Carsten Thomassen: Naturens Verden 10, 1992, s. 388-393. Eksempler på praktiske anvendelser af matematik og nogle uløste problemer Indledning Figur

Læs mere

Om sandhed, tro og viden

Om sandhed, tro og viden Om sandhed, tro og viden Flemming Topsøe Institut for Matematiske Fag Københavns Universitet http://www.math.ku.dk/ topsoe med mange manuskripter se specielt http://www.math.ku.dk/ topsoe/sandhednatfest09.pdf

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af sider Danmarks Tekniske Universitet Skriftlig prøve, den. maj 00. Kursusnavn Algoritmer og datastrukturer Kursus nr. 06. Tilladte hjælpemidler: Alle hjælpemidler. Vægtning af opgaverne: Opgave

Læs mere

Orienterede grafer. Orienterede grafer. Orienterede grafer. Orienterede grafer

Orienterede grafer. Orienterede grafer. Orienterede grafer. Orienterede grafer Philip Bille Orienteret graf. Mængde af knuder forbundet parvis med orienterede kanter. deg + (7) =, deg - (7) = Lemma. v V deg - (v) = v V deg + (v) = m. Bevis. Hver kant har netop en startknude og slutknude.

Læs mere

Matroider Majbritt Felleki

Matroider Majbritt Felleki 18 Rejselegatsformidlingsaktivitet Matroider Majbritt Felleki Den amerikanske matematiker Hassler Whitney fandt i 1935 sammenhænge mellem sætninger i grafteori og sætninger i lineær algebra. Dette førte

Læs mere