1. a) (2p) Vilket aritmetiskt uttryck beskrivs av det binära trädet



Relevanta dokument
PROV I MATEMATIK Algoritmik 26 mars 2008

PROV I MATEMATIK Algoritmik 14 april 2012

Automater. Matematik för språkteknologer. Mattias Nilsson

Uppgift 1 (Oläsliga krypterade meddelanden)

0 a. a -Â n 2 p n. beskriver på sedvanligt sätt en a-periodisk utvidgning av f. Nedanför ritas en partialsumma av Fourierserien.

Föreläsning 4: Kombinatorisk sökning

Uppgift (poäng) 1 (2) 2 (3) 3 (4) 4 (4) 5 (3) 6 (4) 7 (6) 8 (6) 9 (8) Summa

INDUKTION OCH DEDUKTION

Flera kvantifierare Bevis Direkt bevis Motsägelse bevis Kontrapositivt bevis Fall bevis Induktionsprincipen. x y (x > 0) (y > 0) xy > 0 Domän D = R

Textsträngar från/till skärm eller fil

Programmeringsteknik med C och Matlab

Manual för E-tjänsten Statsstödsrapportering

Grafer. 1 Grafer. Grunder i matematik och logik (2015) 1.1 Oriktade grafer. Marco Kuhlmann

Föreläsning 6: Introduktion av listor

Tentamen TEN1 HI

Tentaupplägg denna gång

Kunna beräkna medelantal kunder för alla köer i ett könät med återkopplingar. I denna övning kallas ett kösystem som ingår i ett könät oftast nod.

2. Komma igång Skapa grupper och elever Skriv också ut sidan 13 så att eleverna har en snabbguide till programmet.

Omtentamen (del 1, 6 högskolepoäng) i Programkonstruktion och datastrukturer (1DL201)

Undersökning om pensioner och traditionell pensionsförsäkring. Kontakt AMF: Ulrika Sundbom Kontakt Novus: Anna Ragnarsson Datum:

FÖRELÄSNING 1 ANALYS MN1 DISTANS HT06

Antal svarande i kommunen 32 Andel svarande i kommunen, procent 43 Kategorier ångest? Mycket dåligt Totalt Nej. Någorlunda. Mycket gott.

Begrepp :: Determinanten

Föreläsning 11. Giriga algoritmer

Problem att fundera över

Sidor i boken , , 3, 5, 7, 11,13,17 19, 23. Ett andragradspolynom Ett tiogradspolynom Ett tredjegradspolynom

Öppen Fiber. Steg för steg.

Prov kapitel FACIT Version 1

En ideal op-förstärkare har oändlig inimedans, noll utimpedans och oändlig förstärkning.

Så här inventerar du med Serveras inventeringswebb.

Ekvationssystem - Övningar

1 Skapa Tabell Skapa Relationer Redigera Relationer Redigera Fält i Tabell Lägga till Poster i Tabell...

Krypteringsprogrammet Kryptogamen

Exempeluppgift i Logikstyrning. 1 Inledning. 2 Insignaler och utsignaler

Användarhandbok Nokia Musik

Träd, binära träd och sökträd. Koffman & Wolfgang kapitel 6, avsnitt 1 4

Facit till Några extra uppgifter inför tentan Matematik Baskurs. x 2 x

Monteringsanvisning. izi Modular: bakåt- & framåtvänd. izi Modular RF: bakåtvänd. Bakåtvänd godkänd höjd cm. Framåtvänd godkänd höjd cm

Föreläsning 7 - Faktormarknader

DE FYRA RÄKNESÄTTEN (SID. 11) MA1C: AVRUNDNING

Dekomponering av löneskillnader

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 8 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Delegering i Procapita

6 Rekursion. 6.1 Rekursionens fyra principer. 6.2 Några vanliga användningsområden för rekursion. Problem löses genom:

Föreläsning 13 och 14: Binära träd

B = Bokad tid. T = Tillfälligt bokad tid. L = Ledig tid. X = Spärrad tid

TDDC74 Programmering, abstraktion och modellering DUGGA 2

F5 Introduktion till digitalteknik

Tänk på att logga in! Använd ditt citrixinlogg.

Uppdaterad Enkel manual tävlingsanmälan i friidrottens nya IT- system.

Abstrakt algebra för gymnasister

Introduktion till algoritmer - Lektion 3 Matematikgymnasiet, Läsåret Lektion 3

Guide Flytta / Kopiera / Ta bort en kategori

Mobilapplikation htp:/aktjon.argentum.se/activitymobile

Aditro HR Portalen - logga in och byta lösenord

Extra övningar på SDD:er/SDT:er

Tentamen OOP

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 2 Betrakta vädret under en följd av dagar som en Markovkedja med de enda möjliga tillstånden. 0 = solig dag och 1 = regnig dag

Flexibel meny i Studentportalen

Algoritmanalys. Genomsnittligen behövs n/2 jämförelser vilket är proportionellt mot n, vi säger att vi har en O(n) algoritm.

LULEÅ TEKNISKA UNIVERSITET Ämneskod S0006M Institutionen för matematik Datum Skrivtid

Forskarstuderande. 1. Inloggning

Lagadministration Linda Emterby

ANDRA BASER ÄN TIO EXTRAMATERIAL TILL. Matematikens grunder. för lärare. Anders Månsson

Objektorienterad programmering D2

Uppgift 1 ( Betyg 3 uppgift )

Föreläsning 7. Träd och binära sökträd

3. BRÅK OCH PROCENT P SPEGEL SPEGEL. Priset för spegelglaset är 200 kr / m 2 En ram runt spegeln kostar 60 kr / m

TATA42: Föreläsning 10 Serier ( generaliserade summor )

Tentamen: Programutveckling ht 2015

Tentamen MVE265 Matematisk statistik för V,

Digitalt lärande och programmering i klassrummet. Introduktionsworkshop - Bygg ett akvarium i Scratch

Distriktsfinal. Del 1: 7 uppgifter Tid: 60 min Maxpoäng: 21 (3p/uppgift)

Bruksanvisning. Applikationsplats

Repetitionsuppgifter i Matematik inför Basår. Matematiska institutionen Linköpings universitet 2014

Tentamen i TDP004 Objektorienterad Programmering Praktisk del

Manual Jourläkarschema Närhälsan V7 - Version 1.0

Manual för att registrera en anställds sjukfrånvaro samt registrera läkarintyg

Saltsjöbadens IF Fotboll

2.4. Teckensträngar och logiska uttryck

IRMA - startsida. Byt språk. Logga in

Resultat av enkät Lantbrukare

PROFIT Lathund - Bokningsappen

Fortsättningskurs i programmering F 2. Algoritmer i Programutveckling Hugo Quisbert Problemexempel 1

Statens strålskyddsinstituts författningssamling

Introduktion. Exempel Övningar Lösningar 1 Lösningar 2 Översikt

STYRNING AV PORTFÖLJER MED FLERA TILLGÅNGAR

Den fria tidens pedagogik. Maria Hjalmarsson, Lektor i pedagogiskt arbete vid Karlstads universitet

UPPGIFT 2 KVADRATVANDRING

click! a b c d g h Monteringsanvisning j k > 25 cm l m Godkänd höjd cm maximal vikt 13 kg UN regulation no. R129 i-size Ålder 0-12m

Hur bor unga vuxna som flyttat hemifrån?

1. När du kommunicerar med andra människor, har du känslan av att de inte förstår dig?

Bygga hus med LECA-stenar

Barn på sjukhus FÖRBEREDELSETIPS FRÅN BARN- OCH UNGDOMSSJUKVÅRDEN, SUS

Grunderna i SQL del 1

Javisst! Uttrycken kan bli komplicerade, och för att få lite överblick över det hela så gör vi det så enkelt som möjligt för oss.

Storräkneövning: Sannolikhetslära

Administratörer Det finns tre typer administratörer i Websurvey:

Patrik Calén

Transkript:

Algoritmik SV1, 29 mars 2005 1 1. a) (2p) Vilket aritmetiskt uttryck beskrivs av det binära trädet + + y x z x y + y x z y u b) (3p) Räkna upp trädets noder i pre-, in- respektive postordning. c) (1p) Konstruera med hjälp av Add och Mult en funktion som beräknar uttrycket i a). a) Hy + xzl Hx y+ Hx z + yul yl b) Preordning:, +, y,, x, z, +,, x, y,, +,, x, z,, y, u, y Inordning: y, +, x,, z,, x,, y, +, x,, z, +, y,, u,, y Postordning: y, x, z,, +, x, y,, x, z,, y, u,, +, y,, +, ÿ c) MultHAddHy, MultHx, zll, AddHMultHx, yl, MultHAddHMultHx, zl, MultHy, ull, ylll

Algoritmik SV1, 29 mars 2005 2 2. Bestäm innehållet i s då nedanstående procedur körs med a) (2p) x = 0, 1, 2, 3 b) (3p) godtyckligt x. (Glöm inte bort att motivera ditt svar!) y ô0 k ô0 Sålänge y < x 8 Addera k och kiy Öka k< y = x? i s a) s får innehåll 1,0,1,0 Visas med provkörningar. b) s får innehållet 1 om x är något av talen 80, 2, 4, 6, 8, <, och 0 annars. Dvs proceduren undersöker om x är jämn. MOTIVERING: Om x = 0 kommer proceduren aldrig att köra slingans repetitionsblock. Den Booleska "y = x? i s" kommer därför i detta fall att kontrollera ifall x är lika med det jämna talet 0, (vilket stämmer). Om x > 0 kommer proceduren att gå in i slingan och producera det ena jämna talet efter det andra större än 0 och lägga detsamma i y-högen. När det producerade jämna talet inte längre är mindre än x (dvs när det är lika stort eller större) avbryts slingan. Därefter undersöker den Booleska "y = x? i s" om det producerade jämna talet är lika med x. 3. (6p) Beskriv (med motiveringar förstås) vad funktionen f returnerar. f HxL = hhx, 0L hhx, yl = OmHStörreHx, ghyll, hhx, ÖkaHyLL, LikaHx, ghylll g HzL = MultHz, zl

Algoritmik SV1, 29 mars 2005 3 f är en Boolesk funktion som avgör om input är ett kvadratiskt tal. Tex returnerar f en etta då input är 9 och en nolla då input är 6. MOTIVERING: f använder sig av hjälpfunktionen h som genom rekursion söker från 0 och uppåt efter det först påträffade talet y sådant att y 2 är större eller lika med f :s input. När detta y hittas avbryts rekursionen med en kontroll om likhet råder, dvs om y 2 är lika med f :s input. 4. (5p) Vad beräknar funktionen f vid körning på ett godtyckligt binärt träd? Glöm inte bort att motivera! 9 f Hx, @DL = @D f Hx, @rot vä hödl = där 9 OmHEllerHgHx, väl, ghx, höll, FogaInHrot, FogaSammanHf Hx, väl, f Hx, hölll, FogaSammanHf Hx, väl, f Hx, hölll ghx, @DL= 0 ghx, @rot vä hödl = LikaHx, rotl f Hx, @rot vä hödl returnerar en lista med samtliga x-fädrer (fädrer till x-förekomster) i det binära trädet @rot vä höd. Detta går till så att x-fädrerna i vä och i hö fogas samman till en lista som utökas med rot ifall den senare är en x-fader. T ex returneras listan @+ D om f:s första argument är y och f:s andra argument är det binära trädet i uppgift 1.

Algoritmik SV1, 29 mars 2005 4 5. (5p) Skriv en funktion som för en godtycklig lista returnerar samma lista förutom dess femte nod. Om listans längd är mindre än fem skall listan själv returneras. Tex skall @a b c d f D returneras då inputlistan är @a b c d e f D. UtomFemteHLL = OmHMindreHLängdHLL, 5L, L, @FörstaHLL»@AndraHLL»@TredjeHLL»@FjärdeHLL»UtomFörstaH UtomFörstaHUtomFörstaHUtomFörstaHUtomFörstaHLLLLLLDDDDL Alternativ lösning med rekursion: UtomFemteHLL = UtomH4, LL UtomHn, @DL= @D UtomH0, @nod» LDL = L UtomHÖkaHnL, @nod» LDL = @nod» UtomHn, LLD 6. (6p) Konstruera en funktion TrädDjupetHT L som returnerar antalet nivåer i trädet T. ANM. Funktionen skall kunna ta ett godtyckligt vanligt träd inte ett binärt dito som input. TrädDjupetH@rot» skogdl = ÖkaHSkogsDjupetHskogLL SkogsDjupetH@ DL = 0 SkogsDjupetH@träd» skogdl = StörstHTrädDjupetHträdL, SkogsDjupetHskogLL

Algoritmik SV1, 29 mars 2005 5 7. (7p) Tillverka en funktion som givet ett godtyckligt binärt träd returnerar a) antalet noder i trädet som har två barn.tex skall 3 returneras för trädet nedanför. b) en lista av alla listor @nod x yd där nod är en nod med två barn x, y. Tex är @@abcd@dfgd@ehidd ett korrekt output för trädet nedanför. a b d c e f g h i j : AntalTvåBarnsFöräldrarH@ DL = 0 AntalTvåBarnsFöräldrarH@rot vä hödl = OmHOchHIckeHTomHväLL, IckeHTomHhöLLL, där : ÖkaHAddHAntalTvåBarnsFöräldrarHväL, AntalTvåBarnsFöräldrarHhöLLL, AddHAntalTvåBarnsFöräldrarHväL, AntalTvåBarnsFöräldrarHhöLLL TomH@ DL = 1 TomH@nod» LDL = 0