Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: n 2 n (log n) 2. 3 n /n 2 n + (log n) 4

Relaterede dokumenter
DATALOGISK INSTITUT, AARHUS UNIVERSITET

Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: 4 n n 3n n 2 /logn 5 n n (logn) 3n n 2 /logn 4 n n 5 n

Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: n n (log n) 2. n 2 + log n 3 n. n n (log n)

Skriftlig Eksamen Algoritmer og Datastrukturer 1. Datalogisk Institut Aarhus Universitet

Skriftlig Eksamen Algoritmer og Datastrukturer 1. Datalogisk Institut Aarhus Universitet. Mandag den 22. marts 2004, kl

Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: 7 n 1/ log n. (log n) 4

Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen (bemærk at log n betegner totals logaritmen): n 2 (log n) 2 2.

DATALOGISK INSTITUT, AARHUS UNIVERSITET

Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: 5n 4. logn. n 4n 5 n/logn. n n/logn 5n

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: 23n log n. 4 n (log n) log n

Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: (logn) 7 n 1/2 2 n /n 3 2logn n 2 /logn

Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: n 3/2. n logn (3/2) n. 2 3logn (3/2) n

Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: (logn) 5. 5n 2 5 logn. 2 logn

Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: (logn) 2 2 n 1/n (logn) n. n 2

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: n 7 n 1 7 7/n. 7nlogn. 7n 7nlogn n7

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET EKSAMEN. Grundkurser i Datalogi. Algoritmer og Datastrukturer 1 (2003-ordning)

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: n+logn logn (logn) 7 (3/2) n

Opgave 1 (10%) I det følgende angiver log n 2-tals-logaritmen af n. Ja Nej. n+3n er O(2n)? n 6 er O(n 5 )? nlogn er O(n 2 /logn)? 4n 3 er O(3n 4 )?

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET. Science and Technology EKSAMEN. Grundkurser i Datalogi. Algoritmer og Datastrukturer 1 (2003-ordning)

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Skriftlig Eksamen DM507 Algoritmer og Datastrukturer

Danmarks Tekniske Universitet

1. Redegør for Lister, stakke og køer mht struktur og komplexitet af de relevante operationer

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Binære søgetræer. Binære søgetræer. Nærmeste naboer. Nærmeste nabo

Skriftlig Eksamen DM507 Algoritmer og Datastrukturer

Danmarks Tekniske Universitet

Binære søgetræer. Nærmeste naboer Binære søgetræer Indsættelse Predecessor og successor Sletning Trægennemløb. Philip Bille

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Danmarks Tekniske Universitet

Algoritmer og datastrukturer Course No Cheat Sheet May 15, 2012

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

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

Danmarks Tekniske Universitet

Binære søgetræer. Binære søgetræer. Nærmeste naboer. Nærmeste nabo

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Datastrukturer (recap)

Skriftlig Eksamen Algoritmer og Datastrukturer 2 (2003-ordning)

Danmarks Tekniske Universitet

02105 Eksamensnoter. Lasse Herskind S maj Sortering 3

Definition : Et træ er en sammenhængende ikke-orienteret graf uden simple kredse. Sætning : En ikke-orienteret graf er et træ hvis og kun hvis der er

Skriftlig Eksamen Algoritmer og Datastrukturer (DM507)

Datastrukturer (recap)

Datastrukturer (recap) Datastruktur = data + operationer herpå

19 Hashtabeller. Noter. PS1 -- Hashtabeller. Hashing problemet. Hashfunktioner. Kollision. Søgning og indsættelse.

DM02 Kogt ned. Kokken. Januar 2006

Divide-and-Conquer algoritmer

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

Sammenhængskomponenter i grafer

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

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

22 Hobe. Noter. PS1 -- Hobe. Binære hobe. Minimum-hob og maximum-hob. Den abstrakte datatype minimum-hob. Opbygning af hobe. Operationen siv-ned.

Skriftlig Eksamen Algoritmer og Datastrukturer (DM507)

Sommeren 2001, opgave 1

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

Algoritmer og invarianter

Divide-and-Conquer algoritmer

DM507 Algoritmer og datastrukturer

Prioritetskøer og hobe. Philip Bille

Træer. Datastrukturer & Algoritmer, Datalogi C Forelæsning 9/

Søgetræer: Generel repræsentation af (sorterede) mængder og funktioner Databasesystemer...

Divide-and-Conquer algoritmer

Binære søgetræer og skiplister

Divide-and-Conquer algoritmer

Algoritmer og Datastrukturer 1. Gerth Stølting Brodal

Analyse af algoritmer

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

Sortering i lineær tid

Grafer og graf-gennemløb

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

Grafer og graf-gennemløb

Algoritmer og Datastrukturer 1. Gerth Stølting Brodal

Sortering. Eksempel: De n tal i sorteret orden

Sortering af information er en fundamental og central opgave.

Sortering. Eksempel: De n tal i sorteret orden

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

Mm6: More sorting algorithms: Heap sort and quick sort - October 29, 2008

Skriftlig eksamen i Datalogi

DM507 Algoritmer og datastrukturer

Transkript:

Eksamen. kvarter 00 Side 1 af sider Opgave 1 ( %) Ja Nej n log n er O(n / )? n 1/ er O(log n)? n + n er O(n )? n( n + log n) er O(n / )? n er Ω(n )? Opgave ( %) Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: n n (log n) n n n /n n + (log n) n + (log n) n (log n) n n n n /n Opgave ( %) Angiv for hver af nedenstående algoritmer udførselstiden som funktion af n i O-notation. Algoritme Loop1(n) x 0 for i 1 to n do for j i to n do x x + j Algoritme Loop(n) x 0 for i 1 to n do for j 1 to n do for k i to j do x x + i + j + k Algoritme Loop(n) i 1 j 1 while i n do if j i then j j else i i + 1 j 1 Svar Loop1: O(n ) Svar Loop: O(n ) Svar Loop: O(n log n)

Eksamen. kvarter 00 Side af sider Opgave ( %) Angiv for hver af nedenstående binære træer om det er et lovligt ubalanceret binært søgetræ eller et lovligt AVL-træ. 1 1 1 (I) (II) (III) (IV) (I) (II) (III) (IV) Ikke et Søgetræ men søgetræ ikke et AVL-træ AVL-træ Opgave ( %) Tegn hvordan nedenstående binære heap ser ud efter indsættelse af elementet. Opgave ( %) Tegn den binære heap efter indsættelse af elementerne,,,,, i en heap i den givne rækkefølge, startende med den tomme heap.

Eksamen. kvarter 00 Side af sider Opgave ( %) Tegn hvordan nedenstående binære heap ser ud efter en removemin operation. Opgave ( %) Tegn hvordan nedenstående ubalancerede binære søgetræ ser ud efter indsættelse af elementet 1. 1 1 1 1 1 1 1 Tegn hvordan nedenstående ubalancerede binære søgetræ ser ud efter slettelse af elementet 1. 1 1 1 1 1

Eksamen. kvarter 00 Side af sider Opgave ( %) Tegn hvordan nedenstående AVL-træ ser ud efter indsættelse af elementet. 1 1 Opgave ( %) Tegn hvordan nedenstående rød-sorte træ (dobbeltcirkler angiver røde knuder) ser ud efter indsættelse af elementet. 1 1 1 1 Opgave ( %) Tegn hvordan nedenstående (,)-træ ser ud efter indsættelse af elementet. 1 1

Eksamen. kvarter 00 Side af sider Opgave 1 ( %) Nedenstående er et rød-sort træ (dobbeltcirkler angiver røde knuder). Tegn det korresponderende (,)-træ. 1 1 1 1 Opgave 1 ( %) Nedenstående er en hashtabel hvor der er anvendt quadratic probing. Den anvendte hashfunktion er h(k) = k mod 1. Tegn hvordan hashtabellen ser ud efter at k = og k = indsættes i den givne rækkefølge. 0 1 0 1 Opgave ( %) 1 1 1 1 1 1 1 1 Nedenstående er en hashtabel hvor der er anvendt linear probing. Den anvendte hashfunktion er h(k) = k mod 1. Tegn hvordan hashtabellen ser ud efter at k = slettes fra hashtabellen (der må ikke bruges dummy elementer). 0 1 0 1 1 0 1 1 0 1

Eksamen. kvarter 00 Side af sider Opgave 1 ( %) Angiv for hver af nedenstående sekvenser om den angiver et preorder, postorder, eller et inorder gennemløb af nedenstående binære træ. A B C D E A B C D E F F D B E C A B D F A E C A B D F C E B D F C E A F Hverken preorder, postorder, eller Preorder Postorder Inorder inorder Opgave 1 ( %) Tegn fire træer hvor et postorder gennemløb giver: A B C D D C D D D B B C C A C A A A B B Opgave 1 ( %) Betragt radix-sort anvendt på nedenstående liste af tal (d =, N = ). Angiv den delvist sorterede liste efter at radix-sort har sorteret tallene efter de to mindst betydende cifre. 1 0 0 0 0 1

Eksamen. kvarter 00 Side af sider Opgave 1 ( %) Tegn hvordan nedenstående union-find datastruktur ser ud efter find(), når der anvendes stikomprimering. Opgave 1 ( %) Tegn hvordan nedenstående union-find datastruktur ser ud efter union(,) efterfulgt af union(,), når der anvendes union-by-size heuristikken. 1 1 1 1 1 1

Eksamen. kvarter 00 Side af sider Transitionssystem Euklid(i, j, k) Configurations: {[i, j, k] i, j, k 1} [i, j, k] [i, j i, k] if i < j [i, j, k] [i, j, k i] if i < k [i, j, k] [i j, j, k] if j < i [i, j, k] [i, j, k j] if j < k [i, j, k] [i k, j, k] if k < i [i, j, k] [i, j k, k] if k < j Opgave 0 ( %) For hver af nedenstående udsagn, angiv om de er en invariant for ovenstående transitionssystem Euklid. Startkonfigurationen antages at være [i 0, j 0, k 0 ]. i j k j 0 i k j > 0 gcd(i, j, k) = gcd(i 0, j 0, k 0 ) min{i 0, j 0, k 0 } min{i, j, k} Ja Nej Opgave 1 ( %) For hver af nedenstående funktioner, angiv om de er en termineringsfunktion for ovenstående transitionssystem Euklid. µ(i, j, k) = i j k µ(i, j, k) = i j + k µ(i, j, k) = min{i, j, k} µ(i, j, k) = max{i, j, k} µ(i, j, k) = i + j + k Ja Nej

Eksamen. kvarter 00 Side af sider Algoritme Loop(n) Inputbetingelse : heltal n 1 Outputkrav : Metode : i 1; j 1; {I} while i + j < n do i i + 1; j j + i Opgave ( %) For hver af nedenstående udsagn, angiv om de er en invariant I for ovenstående algoritme Loop. Ja Nej 1 i + j n j n i j j = i j = (i + 1)i/ Opgave ( %) For hver af nedenstående funktioner, angiv om de er en termineringsfunktion for ovenstående algoritme Loop. µ(i, n) = i + j µ(i, n) = n i µ(i, n) = n i j µ(i, n) = log n log i µ(i, n) = j 1 Ja Nej

Eksamen. kvarter 00 Side af sider Opgave ( %) Nedenstående algoritme beregner r = n/m. For at vise gyldigheden af algoritmen skal I n, I m og I r være invarianter omkring variablerne n, m og r. Angiv invarianter hvormed gyldigheden af algoritmen kan bevises (bevis for invarianterne kræves ikke). Algoritme Div(n, m) Inputbetingelse : heltal n, m 1 Outputkrav : r = n/m Metode : r = 0; {I n I m I r } while n m do n n m; r r + 1 Svar I n : n 0 Svar I m : m = m 0 Svar I r : n + r m 0 = n 0 For at kunne bevise at algoritmen terminerer, kræves en passende termineringsfunktion. Angiv en termineringsfunktion (bevis for at termineringsfunktionen har de nødvendige egenskaber kræves ikke). Svar µ: n Opgave ( %) Betragt en stak som understøtter push(x) og pop() i O(1) worst-case tid. Betragt nu stakken udvidet med operationen multi pop(k), der fjerner de k øverste elementer på stakken ved k gange at kalde pop(). Stakstørrelsen før en operation betegner vi n og vi antager at 1 k n. For at argumentere at operationerne push, pop og multi pop tager O(1) amortiseret tid, kræves en passende potentiale funktion. For hver af nedenstående funktioner, angiv om de kan anvendes som en potentiale funktion for et sådant argument. Φ(n) = n Φ(n) = log n Φ(n) = n Φ(n) = n Φ(n) = 1 Ja Nej