Skriftlig Eksmn DM507 Algoritmr og Dtstrukturr Institut for Mtmtik og Dtlogi Synsk Univrsitt, Ons Onsg n 13. juni 2012, kl. 10:00 14:00 Bsvrlsn skl flvrs lktronisk. S vjlning usnt i kurst. All hjælpmilr (lærøgr, nottr, osv.) smt rug f omputr r tillt. Dt r ikk tillt t rug intrnttt, untgn til n lktronisk flvring. Eksmnssættt står f 6 opgvr på 7 nummrr sir (1 7). Ful svrls r svrls f ll 6 opgvr. D nklt opgvrs vægt v ømmlsn r ngivt i pront. Dr må grn rfrrs til lgoritmr og rsulttr fr lærogn (Cormn t l., Introution to Algorithms, 3r ition), smt nr mtrilr fr kurst (ugslr og slis). Hnvisningr til nr kilr kn ikk rugs i svrlsn f t spørgsmål. Bmærk, t hvis r r t spørgsmål, mn ikk kn svr, må mn grn svr ftrfølgn spørgsmål og lot ntg, t mn hr n løsning til forgån spørgsmål.
Opgv 1 (10%) Spørgsmål (5%): Angiv n frvning f knurn i træt T 1 som gør t til t rø-sort træ. (Svr v t skriv n list f nvnn på sort knur og n list m nvnn på rø knur.) T 1 : f g h i Spørgsmål (5%): Angiv ll frvningr f knurn i træt T 2 som gør t til t rø-sort træ. (Svr v for hvr frvning t skriv n list f nvnn på sort knur og n list m nvnn på rø knur.) T 2 : f g h i j k l m n o 1
Opgv 2 (10%) Spørgsmål (5%): Angiv hvilk f fir rrys A 1, A 2, A 3 og A 4 som rpræsntrr n minhp. A 1 : 7 4 9 2 6 8 10 1 3 5 A 2 : 1 2 3 4 5 6 7 8 9 10 A 3 : 1 2 3 4 1 2 3 4 5 6 A 4 : 1 1 1 1 1 1 1 1 1 1 Spørgsmål (5%): Angiv usnt f min-hpn A 5 ftr uførls f n Hp-Extrt- Min oprtion. (Svr v t skriv lmntr i rækkfølg fr vnstr mo højr.) A 5 : 1 2 5 3 7 9 6 8 4 10 Opgv 3 (15%) Spørgsmål (7%): Angiv løsningn til følgn rkursionsligning. T(n) = 8 T(n/4)+n 1.5 2
Spørgsmål (8%): Angiv for hvr f følgn rkursionsligningr om kn løss v hjælp f mstr thorm (Thorm 4.1) i lærogn. For hvr ligning hvor svrt r positivt, ngiv hvilkn f tr ss i mstr thorm som løsr n. (Du høvr ikk ngiv slv løsningn.) i) T(n) = 14 T(n/13)+n ii) T(n) = 13 T(n/13)+nlogn iii) T(n) = 14 T(n/13)+nlogn iv) T(n) = 13 T(n/14)+n Opgv 4 (30%) Spørgsmål (10%): For ll knur v =,,...,h i grfn G 1, ngiv værin v. r rgns f Bllmn-Fors lgoritm, når n kørs for t fin istnn fr knun til ll nr knur. G 1 : 6 8 h f 10-4 -10 25-12 g 17-5 19 1-3 2 3
Spørgsmål (10%): For grfn G 2, ngiv kntrn i t minimum spnning tr (MST). D skl ngivs i n rækkfølg, som vælgs i f Kruskls lgoritm. En knt m npunktr u og v skrivs som sævnligt (u, v). G 2 : 6 8 h f 10-4 -10 25-12 g 17-5 19 1-3 2 Spørgsmål (10%): For ll knur v =,,...,h i grfn G 3, ngiv strttin (isovry tim) v. og sluttin (finishing tim) v.f som tills v y-først søgning (DFS) m strt i knun. For DFS fhængr rsulttt f orningn f knurs nolistr. Du skl hr ntg t på figurn r n knus nolist sortrt i lftisk orn ftr noknurns nvn. f G 3 : h g 4
Opgv 5 (15%) I nn opgv sr vi på n fil som inholr nnstån tgn m ngivn hyppighr. Tgn Hyppigh 100 150 150 250 350 Træt H 1 r t Huffmn-træ for nn fil. H 1 : Spørgsmål (5%): Angiv hvor mng its filn fylr når n r kot v træt H 1. Spørgsmål (5%): Angiv hv følgn strng kos til v træt H 1 (unr rug f ogns konvntion t 0 svrr til vnstr og 1 svrr til højr). Spørgsmål (5%): 1000000110110101 All trærn H 2, H 3, H 4 og H 5 r optiml for filn m ovnstån tl. Angiv hvilk f trærn som kn frmkomm v Huffmns lgoritm. 5
H 2 : H 3 : H 4 : H 5 : Opgv 6 (20%) Forn 1 r hltlslogritmn værin logn. Dtt r n størst to-potns som ikk ovrstigr n (vs. r t hltl k for hvilkt 2 k n < 2 k+1 ). Mn sr nmt følgn (som u kn rug un grunls): 1) logn/2 = logn 1 2) log(n 1) = log n når n r t ulig hltl Vi ønskr for t vilkårligt hltl n 1 t rgn hltlslogritmn for n. 6
Btrgt følgn lgoritm til tt. IntgrLog(n) k = 0 i = n whil i > 1 if i r t lig hltl i = i/2 k = k +1 ls i = i 1 rturn k Spørgsmål (5%): Angiv værirn f i og k v hvr tst v ingngn til whil-løkkn i ovnstån lgoritm, når lgoritmn kørs m input n = 53. Spørgsmål (7%): Vis t følgn r n invrint for whil-løkkn, når lgoritmn strts m input t hltl n 1: Når tstn v ingngn til whil-løkkn uførs, gælr Spørgsmål (4%): i) logi +k = logn ii) i r t hltl Argumntr for t lgoritmn r korrkt, vs. t n for ll hltl n 1 stnsr og rturnrr logn. Spørgsmål (4%): Giv n nlys f n symptotisk kørti (som funktion f n) for lgoritmn. 7