E K S A M E N. Algoritmiske metoder I. EKSAMENSDATO: 13. desember HINDA / 98HINDB / 98HINEA ( 2DA / 2DB / 2EA ) TID:

Like dokumenter
KONTINUASJONSEKSAMEN

E K S A M E N. Algoritmiske metoder I. EKSAMENSDATO: 11. desember HINDA / 00HINDB / 00HINEA ( 2DA / 2DB / 2EA ) TID:

KONTINUASJONSEKSAMEN

E K S A M E N. Algoritmiske metoder I. EKSAMENSDATO: 11. desember HINDA / 99HINDB / 99HINEA / 00HDESY ( 2DA / 2DB / 2EA / DESY )

KONTINUASJONSEKSAMEN

KONTINUASJONSEKSAMEN

Høgskolen i Gjøvik. Avdeling for elektro- og allmennfag E K S A M E N. EKSAMENSDATO: 12. desember 1995 TID:

Høgskolen i Gjøvik Institutt for informatikk og medieteknikk E K S A M E N. 04HBIND* / 04HBINFA / div. andre

Høgskolen i Gjøvik. Avdeling for elektro- og allmennfag K O N T I N U A S J O N S E K S A M E N. EKSAMENSDATO: 11. august 1995 TID:

EKSAMEN. Algoritmiske metoder I KLASSE: 97HINDA / 97HINDB ( 2DA / 2DB )

EKSAMEN. ANTALL SIDER UTLEVERT: 7 (innkl. forside og 2 sider formelark)

MED SVARFORSLAG UNIVERSITETET I OSLO

E K S A M E N. EKSAMENSDATO: 15. desember 1994 TID: Kladd og oppgavearkene leveres sammen med besvarelsen. Kladd merkes med "KLADD".

- KALKULATOR (Som ikke kan kommunisere med andre) - SKRIVE- og TEGNESAKER

K O N T I N U A S J O N S E K S A M E N

KONTINUASJONSEKSAMEN

Pensumoversikt - kodegenerering. Maskinen det oversettes til. Kodegenerering del 2: tilleggsnotat, INF5110 v2006

FASIT, tips og kommentarer

UNIVERSITETET I OSLO

EKSAMEN. 1. klassene, ingenørutdanning og flexing. ANTALL SIDER UTLEVERT: 5(innkl. forside og 2 sider formelark)

Grunnleggende datakunnskap og programmering. EKSAMENSDATO: 16. desember 1997

Brøkregning og likninger med teskje

EKSAMEN med løsningsforslag

Løsningsforslag til Obligatorisk oppgave 2

Temahefte nr. 1. Hvordan du regner med hele tall

Løsningsforslag til avsluttende eksamen i HUMIT1750 høsten 2003.

TFY4104 Fysikk. Institutt for fysikk, NTNU. Lsningsforslag til ving 8. a =

Algoritmer og datastrukturer Eksamen

Microsoft PowerPoint MER ENN KULEPUNKTER

GJØVIK INGENIØRHØGSKOLE

E K S A M E N. Matematikk 3MX. Elevar/Elever Privatistar/Privatister. AA6524/AA desember 2004 UTDANNINGSDIREKTORATET

UNIVERSITETET I OSLO

Definisjon av binært søketre

Matematikk Øvingsoppgaver i numerikk leksjon 9 Numerisk integrasjon

Lars Vidar Magnusson

Heap* En heap er et komplett binært tre: En heap er også et monotont binært tre:

EKSAMEN. Algoritmer og datastrukturer

EKSAMEN. Dato: 28. mai 2018 Eksamenstid: 09:00 13:00

Matematikk Øvingsoppgaver i numerikk leksjon 8 Numerisk integrasjon

Algoritmer og datastrukturer Eksamen

UNIVERSITETET I OSLO

Grunnleggende datakunnskap, programmering og datastrukturer 97HINDA / 97HINDB / 97HDMUA

G høgskolen i oslo. Emne: Algoritmer og datastrukturer. Emnekode: 80131A. Faglig veileder: UlfUttersrud. Gruppe(r) : Dato:

Algoritmer og Datastrukturer

TFY4104 Fysikk. Institutt for fysikk, NTNU. Høsten Løsningsforslag til øving 8. a = e m E

UNIVERSITETET I OSLO

Ny/utsatt EKSAMEN. Dato: 5. januar 2018 Eksamenstid: 09:00 13:00

... JULEPRØVE 9. trinn...

Kom i gang med Tett på Smartbok! Vi veileder deg steg for steg!

EKSAMEN Løsningsforslag. med forbehold om bugs :-)

Øving 4: Coulombs lov. Elektrisk felt. Magnetfelt.

E K S A M E N. Grunnleggende datakunnskap og programmering. EKSAMENSDATO: 7. desember HINDA / 00HINDB / 00HINEA 00HDMUA / 00HDMUB / 00HINGA

Algoritmer og Datastrukturer

Algoritmer og datastrukturer Eksamen 22. februar 2011

Kom i gang med Panorama Smartbok! Vi veileder deg steg for steg!

MAT 1110: Løsningsforslag til obligatorisk oppgave 2, V-06

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Fasit. Grunnbok. Kapittel 4. Bokmål

Fasit. Grunnbok. Kapittel 2. Bokmål

KONTINUASJONSEKSAMEN

Eneboerspillet. Håvard Johnsbråten

Kom i gang med Perspektiver Smartbok! Vi veileder deg steg for steg!

OPPGAVER for IMT Algoritmiske metoder Høsten 2015 Høgskolen i Gjøvik

KAP. 5 Kopling, rekombinasjon og kartlegging av gener på kromosomenen. Kobling: To gener på samme kromosom segregerer sammen

... JULEPRØVE

Løsningsforslag Kollokvium 6

1 Geometri KATEGORI Vinkelsummen i mangekanter. 1.2 Vinkler i formlike figurer

Definisjon. I et binært tre har hver node enten 0, 1 eller 2 barn

MATERIALLÆRE for INGENIØRER

Et eksempel: Åtterspillet

Fasit til utvalgte oppgaver MAT1100, uka 20-24/9

Fasit. Oppgavebok. Kapittel 5. Bokmål

København 20 Stockholm

Algoritmer og Datastrukturer

Øvingsforelesning 9: Minimale spenntrær. Daniel Solberg

Eksamen iin115, 14. mai 1998 Side 2 Oppgave 1 15 % Du skal skrive en prosedyre lagalle som i en global character array S(1:n) genererer alle sekvenser

Get filmleie. Brukerveiledning

Algoritmer og datastrukturer Løsningsforslag

UNIVERSITETET I OSLO

Binær heap. En heap er et komplett binært tre:

EKSAMEN. 1. klassene, ingenørutdanning og Flexing. ANTALL SIDER UTLEVERT: 5 (innkl. forside og 2 sider formelark)

R2 - Heldagsprøve våren 2013

EKSAMEN. 1. klassene, ingenørutdanning og Flexing. ANTALL SIDER UTLEVERT: 5 (innkl. forside og 2 sider formelark)

Binære trær: Noen algoritmer og anvendelser

Løsningsforslag til obligatorisk oppgave i ECON 2130

Læringsmål og pensum. Funksjoner hittil (1) Oversikt. Læringsmål Anonyme og rekursive funksjoner Funksjoner som inn-argumenter Subfunksjoner

EKSAMEN. 1. klassene, ingenørutdanning og Flexing. ANTALL SIDER UTLEVERT: 5 (innkl. forside og 2 sider formelark)

UNIVERSITETET I OSLO

Oppgave 1 Diagrammet nedenfor viser hvordan karakteren var fordelt på en norskprøve.

DELPRØVE 2 (35 poeng)

Terminprøve Matematikk for 1P 1NA høsten 2014

Definisjon: Et sortert tre

addisjon av 2 og 3. Vi skriver da i alt: 2+3= og etter at likhetstegnet er skrevet så gir matcad oss svaret.

Algoritmer og Datastrukturer

KONTINUASJONSEKSAMEN

Terminprøve Matematikk Påbygging høsten 2014

Kap 9 Tre Sist oppdatert 15.03

Nytt skoleår, nye bøker, nye muligheter!

STATISTIKK, KOMBINATORIKK OG SANNSYNLIGHET

Transkript:

Høgskolen i Gjøvik Avdeling for Teknologi E K S A M E N FAGNAVN: FAGNUMMER: Algoritmiske metoder I L 189 A EKSAMENSDATO: 13. desember 1999 KLASSE: 98HINDA / 98HINDB / 98HINEA ( 2DA / 2DB / 2EA ) TID: 09.00-14.00 FAGLÆRER: Frode Hug ANT. SIDER UTLEVERT: 5 (inkludert denne forside) TILLATTE HJELPEMIDLER: Alle trykte og skrevne. - Kontroller t lle oppgverkene er tilstede. - Innføring med penn, evt. trykkblynt som gir gjennomslg. Pss på t du ikke skriver på mer enn ett innføringsrk om gngen (d det blir uleselige gjennomslg om flere rk ligger oppå hverndre når du skriver). - Ved innlevering skilles hvit og gul besvrelse og legges i hvert sitt omslg. Oppgvetekst, kldd og blå kopi beholder kndidten. - Ikke skriv noe v din besvrelse på oppgverkene. - Husk kndidtnummer på lle rk.

Oppgve 1 (teori, 25%) Denne oppgven inneholder tre uvhengige oppgver fr kp. 4, 8 og 12 i lærebok. ) Er følgende utsgn snt eller usnt? Selve bld-/terminlnodene i et binært tre forekommer i smme reltive rekkefølge i forhold til hverndre, uvhengig om treet trverseres på en preorder, inorder eller postorder måte. Begrunn svret. ( Smme reltive rekkefølge betyr t bldnodene hr smme innbyrdes rekkefølge, når mn tr vekk/ser bort fr de interne nodene som er innimellom ved en utskrift. ) En nnen måte (enn læreboks fire måter) å trversere et tre på er ved først å visitere rot, deretter høyre subtre, og så til slutt venstre subtre. Hv vil denne nye trverseringsmetoden h til felles med en eller flere v de ndre trverseringsmetodene i lærebok? b) Vi skl utføre Shellsort på key ene DILLETANTER. Jfr. kode s.109 i lærebok. For hver gng indre for-løkke er ferdig (etter: [j] = v; ): Tegn opp rryen og skriv verdiene til 'h' og 'i' underveis i sorteringen. Mrker spesielt de key ene som hr vært involvert i sorteringen (jfr. fig.8.7 s.108). c) Vi skl utføre rekursiv Mergesort på key ene DILLETANTER. Jfr. kode s.166 i lærebok. For hver gng tredje og siste for-løkke i koden s.166 er ferdig: Tegn opp rryen med de key ene som hr vært involvert i sorteringen (jfr. fig.12.1 s.167). Oppgve 2 (teori, 25%) Denne oppgven inneholder tre uvhengige oppgver fr kp. 15 og 33 i lærebok og om FSM. ) Følgende Red (tykke streker)-blck (tynne streker) tre er gitt: M G R D J P X Legg bokstvene E, T og W etter tur inn i treet ovenfor. Tegn opp treet for hver gng en ny bokstv er lgt inn i Red-Blck treet. For hver bokstv skl du ikke på nytt t utgngspunkt i treet ovenfor. Men lle de tre bokstvene skl til slutt befinne seg i det smme treet. 2

b) Vi hr følgende nettverk (dvs. en grf som er både vekted og retted): A 12 18 B C 6 8 10 10 D E F G 8 5 5 5 2 6 H I J 8 10 8 2 6 4 K L M 20 8 15 N A er kilden og N er kummen. Kpsiteten for hvert enkelt rør/knt er skrevet på figuren, og flyten i røret går lltid nedover på figuren. Tegn figuren opp igjen, men nå med ny verdi på hver knt, som forteller hv som er mx. flyt lngs hver v kntene (fr kilde til kum). c) Følgende deterministiske endelige tilstndsmskin (FSM) er gitt: > b b b, b Hv slgs setninger/språk godtr den? 3

Oppgve 3 (koding, 30%) I et binært tre så definerer vi nivået til en node som vstnden mellom noden og rotnoden. Det betyr t rotnoden hr nivå 0, brn til rotnoden hr nivå 1, brnebrn hr nivå 2, o.s.v. Dersom vi summerer nivåene til lle nodene i et slikt tre og så deler denne summen med ntll noder, får vi treets gjennomsnittsnivå. En node er deklrert på følgende måte: struct node { chr ID; int niv; node* left; node* right; }; // Nodens id/nvn (en bokstv). // Nodens nivå i treet ift. rotnoden. // Peker til venstre subtre. // Peker til høyre subtre. ) Når et slikt binært tre blir bygd, vil niv ikke bli initilisert etterhvert. Dvs. den vil i hver enkelt node kun inneholde tilfeldig søppel. Unntket er rot. Dens niv er stt til 0. Lg funksjonen void sett-niv(node* p)som trverserer treet rekursivt, og som setter rett nivå i lle nodene i treet. Du får ikke lov til å bruke noen ekstr globl vribel (som y på side 61 i lærebok). Ei heller er det lov å sende med noen flere prmetre til funksjonen sett_niv. b) For å beregne gjennomsnittsnivået i treet må vi lge og kjøre en nnen og ny funksjon (etter t funksjonen i oppgve 3 hr gjort jobben sin). Denne hr følgende prototype/funksjonsheding: void sett-verdier(node* p, int & sum_niv, int & ntll) Lg denne funksjonen som trverserer treet rekursivt, og som oppdterer de to refernseoverførte vriblene med totlsummen v lle nodenes nivå og totlt ntll noder i treet. Vi forutsetter t de to refernsevriblene som initielt medsendes er nullstilt. c) L oss nå tenke oss t vi nå hr et binært søketre. Hver node er deklrert som ovenfor, bre t nå er niv uinteressnt. Lg en rekursiv funksjon void skriv-forfedre(node* p) som trverserer hele treet og for hver bld-/terminlnode skriver (til skjermen) en linje med bldnodens ID og ID ene til lle dens forfedre (dens mor, bestemor, o.s.v.). L det være ett blnkt tegn mellom hver v ID ene som skrives, og l det være en ny linje for hver bldnode. NB1: Husk t en bldnode er en node som både hr et venstre og et høyre z-brn. Dvs. en bldnode er den nederste/siste noden på enhver grein i treet. NB2: Det enkleste er nok, for hver bldnode du finner, å skrive lle dens forfedres ID ved å strte i rot og skrive de ID er mn møter på vei ned til den ktuelle bldnoden. 4

Oppgve 4 (koding, 20%) Vi hr et NxN rutenett. I en del v rutene er det plssert brikker. Dette kn f.eks. se slik ut: To ruter med brikker i sies å tilhøre den smme gruppen, dersom de hr en vnnrett eller loddrett strek mellom seg. På figuren ovenfor vil det derfor være to grupper med fire brikker, en gruppe med tre brikker, tre grupper med to brikker og to grupper med en brikke. Ant t rutenettet er representert vh. den to-dimensjonle rryen: brett[n+1][n+1]. Vi bruker indeksene fr 1-N. Initielt inneholder en rute 0 dersom den er tom, og 1 dersom det står en brikke i vedkommende posisjon. Skriv et komplett progrm (bl.. bestående v en eller flere rekursive funksjoner) som finner grupper og for hver v dem: - skriver hvilke ruter (identifisert vh. et i og j pr) som inngår i gruppen - skriver ntll ruter i gruppen (dvs. ntll brikker som totlt utgjør gruppen) og som til slutt skriver totlt ntll ulike grupper i rutenettet. Hint: Det kn nok være lurt å l skuffene inneholde ndre verdier enn bre 0 og 1 for å få løst denne oppgven. Lykke til! frode@hug.com 5