Tentamen CD5370 Algoritmanalys, 5 p 8 aug 2002 kl

Relevanta dokument
Tommy Färnqvist, IDA, Linköpings universitet

Föreläsning 10: Kombinatorik

Datastrukturer och algoritmer

DEL I. Matematiska Institutionen KTH

Analys av algoritmer. Beräkningsbar/hanterbar. Stora Ordo. O(definition) Datastrukturer och algoritmer. Varför analysera algoritmer?

Genomsnittligt sökdjup i binära sökträd

Uppgifter 3: Talföljder och induktionsbevis

101. och sista termen 1

Tentamen i Envariabelanalys 1

MS-A0409 Grundkurs i diskret matematik Sammanfattning, del I

Induktion LCB Rekursion och induktion; enkla fall. Ersätter Grimaldi 4.1

Borel-Cantellis sats och stora talens lag

Lösningar till tentamensskrivning i kompletteringskurs Linjär Algebra, SF1605, den 10 januari 2011,kl m(m + 1) =

Fourierserien. fortsättning. Ortogonalitetsrelationerna och Parsevals formel. f HtL g HtL t, där T W ã 2 p, PARSEVALS FORMEL

θx θ 1 om 0 x 1 f(x) = 0 annars

REGULJÄRA SPRÅK (8p + 6p) 1. DFA och reguljära uttryck (6 p) Problem. För följande NFA över alfabetet {0,1}:

ENDIMENSIONELL ANALYS B1 FÖRELÄSNING VI. Föreläsning VI. Mikael P. Sundqvist

Lycka till! I(X i t) 1 om A 0 annars I(A) =

b 1 och har för olika värden på den reella konstanten a.

Vad är det okända som efterfrågas? Vilka data är givna? Vilka är villkoren?

Inledande matematisk analys. 1. Utred med bevis vilket eller vilka av följande påståenden är sana:

MS-A0409 Grundkurs i diskret matematik I

Tentamen i Statistik STG A01 (12 hp) 5 mars 2010, kl

x 1 x 2 x 3 x 4 x 5 x 6 HL Z x x x

H1009, Introduktionskurs i matematik Armin Halilovic. använder vi oftast induktionsbevis.

Tentamen i Flervariabelanalys F/TM, MVE035

c n x n, där c 0, c 1, c 2,... är givna (reella eller n=0 c n x n n=0 absolutkonvergent om x < R divergent om x > R n n lim = 1 R.

Linjär Algebra (lp 1, 2016) Lösningar till skrivuppgiften Julia Brandes

`

Tentamen i Sannolikhetsteori III 13 januari 2000

Kontrollskrivning 3 i SF1676, Differentialekvationer med tillämpningar. Tisdag kl 8:15-10

Lösningar och kommentarer till uppgifter i 1.1

(a) om vi kan välja helt fritt? (b) om vi vill ha minst en fisk av varje art? (c) om vi vill ha precis 3 olika arter?

Trigonometriska polynom

Tentamen i Elektronik, ESS010, del 2 den 14 dec 2009 klockan 14:00 19:00.

Anmärkning: I några böcker använder man följande beteckning ]a,b[, [a,b[ och ]a,b] för (a,b), [a,b) och (a,b].

Tentamenskrivning, , kl SF1625, Envariabelanalys för CINTE1(IT) och CMIEL1(ME ) (7,5hp)

b) Bestäm det genomsnittliga antalet testade enheter, E (X), samt även D (X). (5 p)

4. Uppgifter från gamla tentor (inte ett officiellt urval) 6

TNA001- Matematisk grundkurs Tentamen Lösningsskiss

Armin Halilovic: EXTRA ÖVNINGAR

Jag läser kursen på. Halvfart Helfart

Statistisk analys. Vilka slutsatser kan dras om populationen med resultatet i stickprovet som grund? Hur säkra uttalande kan göras om resultatet?

1. (a) Eftersom X och Y har samma fördelning så har de även samma väntevärde och standardavvikelse. E(X 2 ) = k

. Mängden av alla möjliga tillstånd E k kallas tillståndsrummet.

Induktion och Binomialsatsen. Vi fortsätter att visa hur matematiska påståenden bevisas med induktion.

Grundläggande matematisk statistik

Tentamen i Statistik, STA A13 Deltentamen 2, 5p 5 juni 2004, kl

1. Test av anpassning.

Sannolikhetslära. c 2015 Eric Järpe Högskolan i Halmstad

För att skatta väntevärdet för en fördelning är det lämpligt att använda Medelvärdet. E(ξ) =... = µ

KOM IHÅG ATT NOTERA DITT TENTAMENSNUMMER NEDAN OCH TA MED DIG TALONGEN INNAN DU LÄMNAR IN TENTAN!!

TENTAMEN I MATEMATISK STATISTIK Datum: 13 mars 08

Matematisk statistik TMS063 Tentamen

Kompletterande kurslitteratur om serier

Webprogrammering och databaser. Begrepps-modellering. Exempel: universitetsstudier Kravspec. ER-modellen. Exempel: kravspec forts:

Minsta kvadrat-metoden, MK. Maximum likelihood-metoden, ML. Medelfel. E(X i ) = µ i (θ) MK-skattningen av θ fås genom att minimera

Av Henrik 01denburg\ Radikaler. För att lösa ekv.: x n = a (n helt, pos. tal) konstruerar man kurvan

Tentamen SF1633, Differentialekvationer I, den 22 oktober 2018 kl

Design mönster. n n n n n n. Command Active object Template method Strategy Facade Mediator

Uppsala Universitet Matematiska Institutionen Bo Styf. Genomgånget på föreläsningarna Föreläsning 26, 9/2 2011: y + ay + by = h(x)

Tentamen 19 mars, 8:00 12:00, Q22, Q26

Databaser - Design och programmering. Databasdesign. Kravspecifikation. Begrepps-modellering. Design processen. ER-modellering

TENTAMEN Datum: 16 okt 09

a) Beräkna E (W ). (2 p)

Introduktion till statistik för statsvetare

2. Konfidensintervall för skillnaden mellan två proportioner.

Andra ordningens lineära differensekvationer

SAMMANFATTNING TAMS79 Matematisk statistik, grundkurs

Räkning med potensserier

Intervallskattning. c 2005 Eric Järpe Högskolan i Halmstad. Antag att vi har ett stickprov x 1,..., x n på X som vi vet är N(µ, σ) men vi vet ej

Tentamen i Statistik, STA A13 Deltentamen 2, 5p 20 januari 2007, kl

RESTARITMETIKER. Avsnitt 4. När man adderar eller multiplicerar två tal som t ex

= x 1. Integration med avseende på x ger: x 4 z = ln x + C. Vi återsubstituerar: x 4 y 1 = ln x + C. Villkoret ger C = 1.

H1009, Introduktionskurs i matematik Armin Halilovic POLYNOM, POLYNOMDIVISION, ALGEBRAISKA EKVATIONER, PARTIALBRÅKSUPPDELNING. vara ett polynom där a

Databaser - Design och programmering. Programutveckling. Programdesign, databasdesign. Kravspecifikation. ER-modellen. Begrepps-modellering

Övningstentamen i MA2018 Tillämpad Matematik III-Statistik, 7.5hp

Inledande matematisk analys (TATA79) Höstterminen 2016 Föreläsnings- och lekionsplan

Cartesisk produkt. Multiplikationsprincipen Ï Ï Ï

SANNOLIKHETER. Exempel. ( Tärningskast) Vi har sex möjliga utfall 1, 2, 3, 4, 5 och 6. Därför är utfallsrummet Ω = {1, 2, 3, 4, 5,6}.

(a) Skissa täthets-/frekvensfunktionen och fördelningsfunktionen för X. Glöm inte att ange värden på axlarna.

Egna funktioner. Vad är sin? sin är namnet på en av många inbyggda funktioner i Ada (och den återfinns i paketet Ada.Numerics.Elementary_Functions)

Problem 2 löses endast om Du hade färre än 15 poäng på duggan som gavs arctanx sin x. x(1 cosx) lim. cost.

Tentamen i Matematisk statistik för V2 den 28 maj 2010

Lösning till tentamen för kursen Log-linjära statistiska modeller 29 maj 2007

NEWTON-RAPHSONS METOD (en metod för numerisk lösning av ekvationer)

Hambley avsnitt 12.7 (även 7.3 för den som vill läsa lite mer om grindar)

TMS136: Dataanalys och statistik Tentamen med lösningar

TENTAMEN I MATEMATISK STATISTIK

Digital signalbehandling Fönsterfunktioner

TAMS15: SS1 Markovprocesser

Sannolikheten. met. A 3 = {2, 4, 6 }, 1 av 11

Följande begrepp används ofta vid beskrivning av ett statistiskt material:

Systemdesign fortsättningskurs

Operativsystem - Baklås

Uppsala Universitet Matematiska Institutionen Bo Styf. Att repetera.

Studentens personnummer: Giltig legitimation/pass är obligatoriskt att ha med sig. Tentamensvakt kontrollerar detta.

Funktionsteori Datorlaboration 1

Tentamen Metod C vid Uppsala universitet, , kl

MS-A0409 Grundkurs i diskret matematik Sammanfattning, del I

Transkript:

MÄLARDALENS HÖGSKOLA 2002-06-29 INSTITUTIONEN FÖR DATATEKNIK KJELL POST Tetame CD370 Algoritmaalys, p 8 aug 2002 kl. 08.30 13.30 Tetame omfattar 6 uppgifter och totalt 3 poäg. För godkät krävs cirka 17 poäg. Avisigar 1. Alla svar skall motiveras och om förutsättigar sakas skall rimliga atagade göras. 2. Iga hjälpmedel tillåta förutom bifogad formelsamlig. 3. Uppgift 1 behöver ej lösas om du klarat kotrollskrivige. Jour: Kjell Post, 070-332779 Lösigsförslag kommer att fias på kurses hemsida efter tetame. Lycka till! Kjell

p 1. Följade algoritm är e divide-ad-coquer-metod för att hitta det största elemetet i e array S. De aropas med MAXIMUM. MAXIMUM x y 1. retur maximum i S x y 2. if y x 3. the retur max S x S y. else m MAXIMUM x x y. m MAXIMUM x y y 6. retur max m m 1p Låt T vara löptide för MAXIMUM. (a) Beskriv T med e rekursiosekvatio. T T för! samt T. (b) Lös rekursiosekvatioe exakt, uder atagadet att är e jäm tvåpotes. T. 1p (c) Uttryck T så ekelt som möjligt med hjälp av Θ. T Θ p 2. Neda följer ett atal påståede som atige är korrekta eller felaktiga. Om påståedet är korrekt, förklara kortfattat varför. Om påståedet är felaktigt, förklara varför och (om möjligt) korrigera svaret. Di motiverig påverkar poäge mer ä ditt beslut om rätt/fel. 1p (a) Betrakta e max-heap med två elemet x och y, där x befier sig på höjd k och y på höjd k. Ma ka då dra slutsatse att x" y. (Höjde för e lövod är#, meda höjde för rotode är Θ lg.) Nej, påståedet är ite sat för t ex x%$ och y'& i edaståede max-heap. ( ) * +, -. 2

1p 1p 1p (b) Både Prims algoritm (för att hitta ett miimalt uppspäade träd) och Dijkstras algoritm (för att hitta kortaste väge frå e od) är exempel på dyamiska algoritmer. Nej, båda är giriga. Dijkstras algoritm väljer ästa od geom att se vilke som har de kortaste käda väge, meda Prims algoritm väljer ästa båge som leder utaför MST med de mista kostade. (c) I bästa fallet har både Quicksort och Mergesort följade rekursiosformel, T/0213 T/ 3 06 Θ/780 där är storleke på sekvese som ska sorteras. Nej, Mergesort är e divide-ad-coquer-algoritm som delar upp problemet i två lika delar, löser dessa rekursivt och seda kombierar ihop resultate i lijär tid, dvs T/091:3 T/ 3 086. Quicksort får i bästa fallet e perfekt partitioerig som delar sekvese i två lika stora delar. Partitioerige sker alltid i lijär tid och resultatet blir äve här T/013 T/3 06. (d) E algoritm som tar O/ ;<0 tid i värsta fallet är alltid att föredra framför e algoritm som tar O/ =0 tid i värsta fallet. Nej, de ea algoritme ka t ex ta 7?> > > ; tid och därför bli slage av e algoritm som tar 7?> = tid för @A7?> >. p 3. Förutom sorterig är e heap mycket praktisk för att lagra e prioritetskö. E prioritetskö stöder som bekat följade operatioer. INSERT/ SB x0 stoppar i elemetet x i mägde S. MAXIMUM/ S0 returerar det största elemetet i S. EXTRACT-MAX/ S0 tar bort och returerar det största elemetet i S. Dr Drummel påstår sig ha utvecklat e y datastruktur för att lagra e prioritetskö som stöder operatioera INSERT, MAXIMUM och EXTRACT-MAX, alla i O/780 värsta tid. Visa att ha har fel. Ledtråd: ditt argumet behöver ite vara ivecklat, täk istället på vad has resultat skulle göra för sorterig. 3

Med Dr Drummels datastruktur skulle vi i så fall kua sortera e godtycklig array A CED F F F G i Θ H I med edaståede metod, vilket är e omöjlighet eftersom sorterig är Ω H lgi. SORTH ACEDJFF F GI 1. SK /0 2. for ikld to 3. do INSERTH SM AC igni. for ikld to. do prit EXTRACT-MAXH SI. Mediae för e sekves av värde är det OP :te mista värdet. Atag att Quicksort kude aväda mediae som pivot-elemet. Hur måga jämförelser skulle då ske, i värsta fallet? Med hjälp av mediae ka ma partitioera perfekt och få till ståd följade rekursiosformel som beskriver atalet jämförelser. TH IQRP THOP IS Lösige till formel är TH IQ ΘH lgi.

10p. Betrakta de riktade grafe eda. a b 6 8 c 7 9 e f 10 d 6 g 9 h (a) Bestämt ett miimalt uppspäade träd för grafe med hjälp av Prims algoritm. Börja i od a och visa i vilke ordig du väljer bågar!

MST visas i figure eda. Bågara valdes i följade ordig: at bu at fu f T gu f T hu bt cu ct eu bt dv a b 6 8 c 7 9 e f 10 d 6 g 9 h (b) Är väge mella två oder i ett miimalt uppspäade träd desamma som de kortaste väge mella de två odera i de fullstädiga grafe? Ge ett bevis eller motexempel. Nej, det är ite sat. MST för följade graf är W a T bu b T cx där väge frå a till c kostar Y?Z i MST, me bara Y?[ i de ursprugliga grafe. a b 10 8 c (c) Är det möjligt att e djupförstsökig av dea graf skulle kua producera bakåtbågar? Nej, för bakåtbågar idikerar cykler och dea graf är e DAG (riktad acyklisk graf). (d) Vad ka ma dra för slutsats om det ite fis bakåtbågar? Det fis iga cykler i grafe. 6

10p 6. Doktor Drummel ska (ågot förseat) skicka julkort till tjocka släkte. Till sitt förfogade har ha frimärke i följade valörer: d\ ]_^?` örea dbc]rd8` örea dec]f` öre Doktor Drummel vill gära miimera atalet frimärke som måste slickas. Därför öskar ha välja ut det mista atalet frimärke vars summa är N, där N är portot som ska betalas. (a) Beskriv e girig algoritm som löser problemet, uta att för de skull göra aspråk på att vara optimal. Aväd det största frimärket så mycket det går, fortsätt seda med det äst mista frimärket, osv. Låt d\hg g g d k vara de frimärke som står till förfogade, sorterat i ökade ordig. GREEDY-MAKE-CHANGE i N j 1. j k k 2. while N lm` 3. do while N d j. do N k No d j. prit d j 6. j k jop^ Dea algoritm loopar olyckligtvis om ite portot är e multipel av ^?`. 1p 7p (b) Visa med ett exempel (giva värde på N och frimärkes valörer) att de giriga strategi ite är optimal. För t ex 80 öre kommer de giriga strategi att returera f`rq ^?`rq^?`rq ^?` meda det optimala vored8`rqsd8`. (c) Aväd dyamisk programmerig för att formulera e e effektiv algoritm som bestämmer det mista atalet frimärke som krävs för N. Visa hur svaret i (b) förbättras med di lösig. (Ledtråd: aväd c tiq ju för att betecka atalet frimärke som krävs för att betala porto j, där edast frimärke f\rg g g f i aväds.) 7

Aväd e tabell cv w x xx kyzcx x x N{ med e rad för varje mytslag och e kolum för varje växelvärde fråz till N. Låt cv iy j{ vara det mista atal myt som behövs för att ge växel på j öre, där bara myt d }x x x d i aväds. Speciellt gäller då att cv ky N{ är lösige till problemet. Rekursiosekvatioe blir då cv iy j{ ~ mi cv i pw y j{ny w cv iy j d i {N där det första argumetet till mi betyder att myt d i ite aväds och det adra argumetet betyder att myt d i aväds. Då j d i ƒ z eller i ƒ w är det bekvämt att låta cv iy j{ ~ för att hidra mi att välja det alterativet. I ett traditioellt program är det mer praktiskt att testa om ågo av dessa fall iträffar, ia vi aväder rekursiosformel. DYN-MAKE-CHANGE N 1. for i w to k 2. do cv iyz {2 ˆz 3. for i w to k. do for j Lw to N. do if i~_w the cv iy j{2 Lw cv iy j d { 6. else if j ƒ d i the cv iy j{2 cv i pw y j{ 7. else cv iy j{2 mi cv i pw y j{nyw cv iy j d i {N 8. retur c v ky N{ Tidskomplexitete för dea algoritm är Θ k. För exemplet i (b) ova får vi följade tabell som säger att blott två frimärke behövs. 0 10 20 30 0 0 60 70 80 d J~Aw?z 0 1 2 3 6 7 8 dš ~mœ8z 0 1 2 3 1 2 3 2 d ~Žz 0 1 2 3 1 1 2 3 2 8

Formelsamlig för Algoritmaalys Kjell Post Istitutioe för Datatekik Mälardales Högskola PO Box 883, S 721 73 Västerås E-mail: kpt@mdh.se 1 Löptider Ett programs löptid defiieras som e fuktio T, där är ett mått på storleke av idata. Låt c I vara kostade för att köra ett program med idata I. best case: T mi c I I worst case: T max c I < I average case 1 : T š p I c I Iš där p I är saolikhete för att idata I förekommer. 2 Asymptotisk otatio œ f O g ž Ÿ c m ª «< œ f œ cg «f Ω g Ÿ c ± m ª «< 9 œ cg 9œ f f Θ g ² ³Ÿ c cµ< m ª «œ c g 9œ f œ cµ g ¹ f o g ² ³Ÿ f lim º» g f ω g ž Ÿ g o f ž Ÿ f lim º» g ½¼ 1 eller expected ruig time. 9

2.1 Ragordig ¾À lgá lg lg  RÃ Ä Rà  3 Räkelagar 3.1 Heltalsdel 1. xå ¾ÀÆÈÇ xé Æ xæèê xë Æ xì ¾ 2. Ê Í Ã Ë Ì Ç Í Ã É±Î 3. ÊÏÊ Í aë<í bë Î Ê Í abë Ð Ñ bôrò Õ. ÇÏÇ Í aé<í bé Î Ç Í abé Ð aîòró Ñ bôrò Õ 3.2 Expoeter 1. Ð a m Õ Î Ð a Õ m Î a m 2. a m a Î a mö 3. e x ¾ Ì x. ¾ Ì xæ e x Æ:¾ Ì xì xâ ÐÙØ xøïú ¾ Õ 3.3 Logaritmer För alla aôròró bôròró côrò samt : 1. log  eû ¾ ÜEÝ Ý 2. aî b log b a 3. log c Ð abõî log c aì log c b. log b a Î log b a. log b aî Ð log c aõí Ð log c bõ2î ¾ Í log a b 6. log b Ð ¾ Í aõîå log b a 7. a log b Î log b a 8. xí Ð ¾ Ì xõ Æ lð ¾ Ì xõ Æ x Ð x ÔRÅ ¾ Õ 9. lgþ iß om Îáà iîò lgð lgþ iâjãäß Õ om iôrò 10. lgá Î miå i Òçæ lgþ iß ÆA¾éè 10

ì ð 3. Fakultet 1. êë k kíjî 2. êëaï ð πñ ò eó ñsô õ Θñô<ò ó ó 3. êë oñ ó. êë ωñ ð ó. lgñ êöó ë Θñ lgó 3. Fiboacci-tal 1. F cëø8ù Fî ëaô<ù F i ë F iújî õ F iú2û för i ürð. φ 2. F i ë iýÿþ φ ï i, där φë ñô õ ï ó ð Kombiatorik 1. ñ xõ yó ë x kí k ú k y k 2. k ë ê kê ñ ý kó ê ë ý k k 3. e k k k k Summor 1. 2. 3. kíjî kíjî kíjî kë ñ õpô8ó kû ë ñ õ%ô8ó ñ ð õ%ô8ó k m ë Θñ m î ó þφë ñô ý ï ó ð 11

.. 6. 7. k k k k x k x x x k k k k! 8. H x x #" k l$ O.1 Approximatio med itegral 1. % 2. % f m&! x dx '! f x dx ' m k m k m f k '(% f k ')% 6 Master-metode! m f x dx f m&! x dx om f k är mootot växade. om f k är mootot avtagade. Givet e rekursiv formel: T at " b $ f a*,+ b* - Om f O a& ε log b för gt ε.0/, T Θ a log b - Om f Θ a log b, T Θ log b lg - a Om f Ω a ε log b för gt ε.0/ och 21 c a f " b ' c f för stora, T Θ f 3 12