Innehåll. Träd Terminologi

Relevanta dokument
Innehåll. Föreläsning 7. Modeller/tillämpningar för träd. Organisation och terminologi (1) Organisation och terminologi (2)

Datastrukturer och algoritmer. Modell/tillämpningar för träd. Innehåll. Organisation och terminologi (2) Organisation och terminologi (1)

Algoritmer och datastrukturer, föreläsning 11

F8: Logiska komponenter. Introduktion. Koder. Avkodare. Logiska komponenter

Trädstrukturer. Definitioner och terminologi. Informationsteknologi Tom Smedsaas 21 augusti 2016

Föreläsning 11: Grafer, isomorfi, konnektivitet

Innehåll. Träd. Träd. Traversering av träd. Binära träd. Datastrukturer och algoritmer Datastrukturer. Algoritmer.

Tillståndsmaskiner. Moore-automat. Mealy-automat. William Sandqvist

v v v v 5 v v v 4 (V,E ) (V,E)

Magnus Nielsen, IDA, Linköpings universitet

Making room for tomorrow

Nordic Light Roulett. Aluminiumpersienn. Nordic Light Roulett Installation - Manövrering - Rengöring. Aluminiumpersienn

Lösningar till ( ) = = sin x = VL. VSV. 1 (2p) Lös fullständigt ekvationen. arcsin( Lösning: x x. . (2p)

1. lösa differentialekvationer (DE) och system av DE med konstanta koefficienter


VATEK Multifix kopplingar för alla rörtyper

Hvor tilfreds er du med din togrejse?

f(x)dx definieras som arean av ytan som begränsas av y = f(t), y = 0, t = a och t = b, se figur.

Mer av livet. Riksten Friluftsstad.

FACIT TILL OMTENTAMEN I DATASTRUKTURER OCH ALGORITMER DVG B kl. 08:15 13:15

T-konsult. Undersökningsrapport. Villagatan 15. Vind svag nordvästlig, luftfuktighet 81%, temp 2,3 grader

14. MINSTAKVADRATMETODEN

Elementær diskret matematikk, MA0301, våren 2011

Laboration 1a: En Trie-modul

Ulefos Multifi x Rörkopplingar för alla rörtyper

C100-LED Duschhörn med LED-Belysning

Föreläsning 7. Splay-träd. Prioritetsköer och heapar. Union/Find TDDC70/91: DALG. Innehåll. Innehåll. 1 Splay-träd

Byt till den tjocka linsen och bestäm dess brännvidd.

SF1625 Envariabelanalys

Mitt barn skulle aldrig klottra!...eller?

Kurvanpassning. Kurvanpassning jfr lab. Kurvanpassning jfr lab. Kurvanpassning jfr lab. Kurvanpassning innebär approximation. Kurvanpassning jfr lab

Installatörens referenshandbok

The Next Generation platform Snabbguide

Operativsystemets uppgifter. Föreläsning 6 Operativsystem. Skydd, allmänt. Operativsystem, historik

SF1625 Envariabelanalys

En krona dagen om dag ona om r e k n n E E n n k e g o r a d m o a n

Robin Ekman och Axel Torshage. Hjälpmedel: Miniräknare

Företagens synpunkter på skattesystemet, skattefusket och Skatteverkets kontroll

HOMOGENA DIFFERENTIALEKVATIONSSYSTEM MED KONSTANTA KOEFFICIENTER

24 Integraler av masstyp

Oleopass Bypass-oljeavskiljare av betong för markförläggning

st tt r s s ss r t r r r t rs r st ä r st r

Snickerier. Räcken & Stolpar, Snickarglädje, Ett företag inom Södra

Sidor i boken

Opp, Amaryllis (Fredmans sång nr 31)

Vill veta kvaliteten hos våra vattenföringsdata?

Där a mol av ämnet A reagerar med b mol av B och bildar c mol av C och d mol av D.

Monteringsanvisning. Bakåtvänd montering. Godkänd höjd cm. Maximal vikt 18 kg. UN regulation no. R129 i-size. Ålder 6 mån - 4 år. 1 a.

Finaltävling den 20 november 2010

Tentamen i Databasteknik

LINJÄR ALGEBRA II LEKTION 1

Arkitekturell systemförvaltning

ACO VVS. industribrunn. EG Industribrunn

H1009, Introduktionskurs i matematik Armin Halilovic. Definition. Mängden av alla lösningar till en ekvation kallas ekvationens lösningsmängd.

Sammanfattning av ALA-B 2007

ICKE-HOMOGENA DIFFERENTIALEKVATIONSSYSTEM ( MED KONSTANTA KOEFFICIENTER I HOMOGENA DELEN)

Innehåll. Om gasfjädrar 1. Modeller (1 dan = 1 kgf = 2.25 lbf) Cylinder. Initialkraft dan. diameter mm < 250 < < F INIT < < F INIT

Innovation GAT med guldkant

Programinformation Teknikcollege Allhamra. Kinda Lärcentrum Kontakt. Teknisk utbildning, för framtida anställning

Hej plåtslagare! Vi älskar regn. Vi älskar regn

Lödda värmeväxlare, XB

Materiens Struktur. Lösningar

OTHELLO. En minut att lära... En livstid att bemästra. Brian Rose

Listor = generaliserade strängar. Introduktion till programmering SMD180. Föreläsning 8: Listor. Fler listor. Listindexering.

============================================================ vara en given funktion som är definierad i en punkt. i punkten a och betecknas f (a) def

Anmärkning1. L Hospitals regel gäller även för ensidiga gränsvärden och dessutom om

Svar: a) i) Typ: linjär DE med konstanta koefficienter i homogena delen dy men också separabel ( y = 10 4y

Sångerna är lämpliga att framföra vid bröllop, speciella fester och romantiska tillfällen för Kärlekens skull... GE 11176

Appendix. De plana triangelsatserna. D c

Medborgarnas synpunkter på skattesystemet, skattefusket och Skatteverkets kontroll

Collections och annat nyttigt

RINDÖVÄGEN BEFINTLIG GÅNGVÄG +15,30! ANPASSNING MOT +14,70! BEF GÅNGVÄG +14,80! SM1 14,51+ ANPASSNING MOT +14,10! GR1 BEF GÅNGVÄG 13, ,44

Skapa uppmärksamhet och få fler besökare till din monter!

Hittills på kursen: E = hf. Relativitetsteori. vx 2. Lorentztransformationen. Relativistiskt dopplerskift (Rödförskjutning då källa avlägsnar sig)

MEDIA PRO. Introduktion BYGG DIN EGEN PC

TNA003 Analys I Lösningsskisser, d.v.s. ej nödvändigtvis fullständiga lösningar, till vissa uppgifter kap P4.

Headset för det Mobila kontoret

Robin Ekman och Axel Torshage. Hjälpmedel: Miniräknare

16.3. Projektion och Spegling

Fysiktävlingen Lösningsförslag. Uppgift 1. Vi får anta att kinetisk energi övergår i lägesenergi, och att tyngdpunkten lyftes 6,5 m.

Vi önskar er ett trevligt Speedwaymöte i Norrköping denna helg

Affärsnätverka framgångsrikt

1 Armin Halilovic: EXTRA ÖVNINGAR

Kan det vara möjligt att med endast

x = x = x = x=3 x=5 x=6 42 = 10x x + 10 = 15 x = = 20 x = 65 x + 36 = 46

Nya regler för plåtbalkar-eurokod 3-1-5

FÄRGLAGD A STENSUNDSVÄGEN BOSTÄDER BILPLATSER GARAGE 86 ST

är ett tal som betecknas det(a) eller Motivering: Determinanter utvecklades i samband med lösningsmetoder för kvadratiska linjära system.

Kaffe 5 kr Bulle 5 kr Kaffe och bulle 8 kr

Rektangulär kanal, K. Produktbeteckning. Beteckningsexempel. Sida A (se storlekstabell) Sida B (se storlekstabell)

(KD), ordftirande, representant omsorgsn lmnden (S), oppositionsråd, repr. kommunst).relsen, lill 14.20, g PRO PRO PRC : 'j{,., t.

Löpsedel: Integraler. Block 4: Integraler. Lärobok. Exempel (jfr lab) Exempel (jfr lab) Integrering i Matlab

F5: Vektorer (Appendix B) och Vektormodulation (Kap PE 2)

Tillämpning av integraler

Snickerier. Räcken & Stolpar, Snickarglädje, Hyllplan, Trädgård, Stolpsystem. Trädetaljer och Produkter som håller stilen på ditt hus

MER MASSAGE - MINDRE LJUD

1. M öt et s öp pn an d e S ve n fö r k la r a r mö t et ö p p nat k lo c k a n i me d le ms k o nt o r et.

SPEL OM PENGAR FÖR - EN FRÅGA FÖR SKOLAN? VERKTYG, ÖVNINGAR OCH KUNSKAPSBANK FÖR ARBETE MED SPEL OM PENGAR I SKOLAN

V Ä G E N T I L L V A T T E N w w w. a v a n t i s y s t e m. s e

Transkript:

Innåll F9: Trä Nils Börlin 5DV149 Dtstrukturr o loritmr Mollr ör/tillämpninr v trä. Ornistion o trminoloi. Sinturirm ör ornt trä. Olik typr v trä. Träloritmr. Implmnttion v trä. Mollr o tillämpninr Trä Trminoloi Moll Orrvärn i tt rmnt llr ört (ornt trä). Stmtvl/släktträ (inärt trä). Tillämpninsxmpl inom tvärln: Filsystm. Klssirrkir i Jv/OOP. Bsluts-/sök-/splträ inom AI. Prolos xkvrin. Prolmlösnin Konrnsrs Pss Bok Artikl Vrj trä r n rot (root). Ett trä står v nor (nos). Om t inns lr nor så inns t okså rnr (rns). Nor länst ut på rnrn klls löv (ls). Bsök polisn Bok rs Bok otll Bstäm tm Gör tstkörninr Skriv rtikl

Trä Ornistion Trä Ornistion (2) Elmntn i tt trä klls ör nor. En no r n position o v. tt vär. Värt på n no klls tiktt (ll). Ett träs nor inns på olik nivår (lvls). Ett trä är ornisrt som n örälr-rn-irrki. Ett rn lir på nivån unr ss örälr. All nor på n nivå m smm örälr klls syskon (silin). Ett lträ = n no o ss vkomm. nivå 1 nivå 2 nivå 3 nivå 4 Höjn (x) ör no x är ntlt år på n länst rnn i t trä är x är rot. Höjn v tt trä T (T ) = (rotn) () = 0, () = 2, () = 3 = (T ). Djupt (x) os n no x är ntlt år rån x upp till rotn: () = 3, () = 1, () = 0, nivå(x) = (x) + 1. nivå 1 nivå 2 nivå 3 nivå 4 Trä Glol nskpr Spiiktion v trä Nvirinsorintr vs. lträsorintr Ett trä r tt änlit ntl nor Ett trä är n omon ttyp. Ett trä sknr yklr, vs. vän mlln två nor är llti unik. Ett trä är n rkursiv ttyp; vrj lträ är i si tt trä. Om mn rtr m nstk trä som öränrs lånsmt, löv ör löv, så är nvirinsorintr ättr. Nturlit m oprtionr som Insrt-no, Dlt-no. Hållr mn på m trä o lträ som mn vill l upp llr slå smmn är lträsorintr ättr. Nturlit m oprtionr som Join, Split. Vi kommr tt okusr på n nvirinsorintr spiiktionn.

Sinturirm ör ornt trä Olik typr v trä St-ll vl Inspt-ll Crt Otr(vl) Root pos Hs-ll Insrt-irst-il Insrt-nxt-silin Dlt-no Bool First-il Nxt-silin Prnt Ornt trä (x. miljträ) Syskonn är linjärt orn. Syskonn kn rprsntrs v n list. Oornt trä (x. ilsystmt på n tor). Orninn ln syskonn r inn tyls. Syskonn kn rprsntrs v n män. Urträ Mr strkt än två örr. Hr n n ttyp som ntrr syskonn. Olik typr v trä Forts. Om ornin Rikt trä Kn r å i n riktnin i trät. I tt nåtriktt trä skns Prnt. I tt uppåtriktt trä skns Cilrn. Ett uppåtriktt trä måst n unktion ör tt nå nåot nnt än rotn, t.x. n oprtion som rturnrr ll löv. Binär trä (t.x. stmtvl) Vrj no r öst två rn. Orn Använs ör tt skriv olik sätt tt orn lmnt ör/tr vrnr i tt ojkt i n ttyp. Rikt När t inns n symmtri när t ällr oprtionr ör tt itt rån tt lmnt till tt nnt. Sortr När lmntvärn är orn nlit nåon orninsrltion inir ör lmntns värn (x. älr än ).

Binär trä En no i tt inärt trä kn öst två rn. Brnn klls vänstr- o örrn. Orninn mlln rnn är oinir, ävn om trän otst prsntrs m vänstrrnt ör (till vänstr) om örrnt. Två olik inär trä kn vr smm orn trä m mx två rn. Binär trä Mximl o miniml öj Mximl öj (n 1) ör n = 3, n no pr nivå: Miniml öj: t år j tt lytt når nor o å n minr öj: miniml öj j miniml öj Binär trä Höj o ntl nor För inär trä T m n nor o öj ällr: n 1 (mximl öjn), lo2 (n + 1) 1 Antlt nor på jup i är 2 i, vs. 1, 2, 4, 8,... Antlt nor totlt i trät n 2 +1 1. Ett trä r miniml öj om n > 2 1, vilkt r lo 2 (n + 1) 1 < lo 2 (n + 1), är lltså v O(lo 2 (n)). Binär trä Blnsr trä Mn vill så run trä som möjlit. Om vänstr o ör lträ r unär lik mån nor r trät lns. I tt lnsrt trä är vän till n slumpvis vl no O(lo2 n). Kompltt inärt trä (rätt r lns) Fyllr på trät rån vänstr till ör, n nivå i tt. Fullt inärt trä (ot åli lns) Vrj no är ntinn tt löv llr r två rn. kompltt ullt

Träloritmr Trvrsrin v trä Bsloritmr: Bräkn jup. Bräkn öj. Slå iop två trä. Dl upp tt trä. Trvrsr (örlytt si i) trät. Bräkn/vlur tiktt(-r) i trät. Tillämpninr v trä involvrr ot tt mn sökr tr tt lmnt m viss nskpr, iltrrr ut lmnt m viss nskpr, llr trnsormrr strukturn till n nnn struktur Exmplvis sortrin o lnsrin. All ss yr på tt mn trvrsrr strukturn. Dt inns två runlän trvrsrinsmtor: rn-örst o jupt-örst. Trvrsrin v trä Brn-örst Trvrsrin v trä Brn-örst Trät unrsöks n nivå i tt. Först rotn, sn rotns rn, ss rnrn, t. En kö är ot jälp i implmnttionn. Vrj no i trät söks nst n ån, vs. O(n). nivå 1 nivå 2 nivå 3 Aloritm Orr(Tr T) input: A tr T to trvrs or lvl L o T o or no n o L o omput(n) nivå 4 i j Ornin:,,,,,,,, i, j.

Trvrsrin v trä Djupt-örst Trvrsrin v trä Djupt-örst, prorr Mn öljr vrj rn i trät utirån rotn till lövt. En stk är ot till jälp vi implmnttionn. Vrj no i trät söks nst n ån, vs. O(n). Tr vrintr på trvrsrin: Prorr (ll, il 1, il 2,...,il ni ). Postorr (il 1, il 2,...,il ni,ll). Inorr (il 1, ll, il 2,...,il ni ). Aloritm prorr(tr T) input: A tr T to trvrs omput(root(t))// Do somtin wit // t root no. or il w o root(t) o prorr(w) prorr(bintr T) omput(root(t)) prorr(ltcil(w)) prorr(ritcil(w)) i j Ornin:,,,,,,,, i, j. Prorr läs tt okumnt Trvrsrin v trä Djupt-örst, postorr Ppr Aloritm postorr(tr T) input: A tr T to trvrs or il w o root(t) o postorr(w) omput(root(t))// Do somtin wit // t root no. postorr(bintr T) postorr(ltcil(w)) postorr(ritcil(w)) omput(root(t)) Titl Astrt 1 2 3 Rrns 1.1 1.2 2.1 2.2 2.3 3.1 3.2 i j Ornin:,,,,,, i, j,,.

Postorr Bräkn ritmtisk uttryk utn prntsr Aloritm vlutexprssion(tr T) I isl(t) rturn tvlu(t) ls x vlutexprssion(ltcil(t)) y vlutexprssion(ritcil(t)) op tvlu(t) rturn x op y Trvrsrin v trä Djupt-örst, inorr Aloritm inorr(tr T) input: A tr T to trvrs inorr(irstcil(t)) omput(root(t))// Do somtin wit // t root no. or il w (- irst) o root(t) o inorr(w) inorr(bintr T) inorr(ltcil(w)) omput(root(t)) inorr(ritcil(w)) / + + 3 2 1 3 9 5 Orr: 1, 3, +, 3, *, 9, 5, -, 2, +, /. i j Ornin:,,,,,,,, i, j. Inorr Skriv ut ritmtisk uttryk Aloritm printexprssion(tr T) print "(" I sltcil(t) printexprssion(ltcil(t)) print tvlu(t) I sritcil(t) printexprssion(ritcil(t)) print ")" + 1 3 3 / + 9 5 Utskrit: ((1+3)*3)/((9-5)+2) 2 Trä inär trä Nåtrikt inär trä r li länkr. Utnyttj ss ör tt trä nvär i trät. Dt är vnlit tt skp inorr-trä trä. Dtt ör tt mn kn trvrsr m jälp v itrtion iställt ör rkursion. Sprr minn.

Trä Tillämpninr Tillämpninr Konstruktionr v nr typr (spillt inär trä). Sökträ: Vrj no symolisrr tt ivt tillstån. Brnn symolisrr olik tillstån mn kn mn i utirån örälrns tillstån. Plnträ o OCH/ELLER-trä Norn symolisrr ur mn rytr n tt stort prolm i minr lr o v. i vilkn ornin mn ör lös lprolm. Pss Bok Konrnsrs Artikl Dt ällr tt itt målnon, vs tt tillstån som lösr prolmt. Int rimlit tt y upp ll nor (möjli) tillstån. Ot nväns uristik. Bsök polisn Bok rs Bok otll Bstäm tm Gör tstkörninr Skriv rtikl Ot nvänr mn OCH/ELLER-trä är mn kn OCH- kntr llr ELLER-kntr mlln örälr o rn: OCH ll rn övs ör lösninn. ELLER nåot rn övs ör lösninn. Implmnttionr v trä Ornt trä som k-länk struktur: Non i trät står v k-llr m tiktt, länk till örälrn o k 1 länkr till rnn. + Antlt nor i trät ynmiskt. - Mximl ntlt rn k 1 stämt i örvä. - Om t är stor vrition i ntlt rn så inns outnyttj länkr. Exmpl ör k = 4, 4-ll (tiktt, örälr, örst rn, nr rn, trj rn). Implmnttionr v trä Nåtriktt ornt trä som 1-länk struktur m list v rn: Non år n tiktt o länk till list v rn. + Antlt nor i trät ynmiskt. + Antlt rn ynmiskt.

Implmnttionr v trä Utök till 2-llr så lir trät oriktt: Non år n tiktt, länk till örälrn, smt länk till list v rn. Implmnttionr v trä Oriktt trä m jälp v 4-ll (tiktt, örälr, örst rn, örån syskon, tröljn syskon). Implmnttionr v trä Implmnttionr v trä Uppåtriktt trä m jälp v 1-ll (tiktt, örälr). Oornt uppåtriktt trä som ält: Vrj lmnt i n vktor står v tt pr: nons tiktt o n rrns till örälrn. + Tr litn plts. - Int r stö ör trvrsrin (t. x. svårt vör vilk nor som är löv). - Mximl storlkn på trät måst stämms i örvä. 1 2 3 4 5 6 7 8 9 Etiktt Förälr 4 8-1 0 2-1 8 4 8

Implmnttionr v inär trä Implmnttionr v trä Nåtriktt inärt trä m jälp v 2-ll (tiktt, vänstrrn, örrn). Oriktt inärt trä m jälp v 3-ll (tiktt, örälr, vänstrrn, örrn). Implmnttionr v trä Binärt trä som ält Rotn r inx 1 o non m inx i r sitt vänstrrn i non m inx 2i, sitt örrn i non m inx 2i + 1, sin örälr i non m inx i. 2 + Tr int utrymm ör strukturinormtion. - Trät r tt mxjup (sttiskt ält). - Krävs mrkörr ör null o tom no. - Ev. slösri m utrymm. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Etiktt -- - - -- - - -