Lars Vidar Magnusson
|
|
|
- Elin Hovland
- 9 år siden
- Visninger:
Transkript
1 Binære Søketrær Lars Vidar Magnusson Kapittel 12 Binære Søketrær Søking Insetting Sletting
2 Søketrær Søketrær er datastrukturer som støtter mange dynamiske sett operasjoner. Kan bli brukt både som dictionary og prioritetskø. Kjøretiden til operasjonene er proposjonal med høyden til treet. I bestefall er kjøretiden Θ(log n). I verstefall er kjøretiden Θ(n). Det finnes mange ulike søketrær. I dennne forelesningen skal vi se på binære søketrær.
3 Binære Søketrær Binære søketrær er en viktig datastruktur for dynamiske sett. Flere av operasjonene kan implementeres med O(h) kjøretid, hvor h er høyden til treet. Et binært tre representeres som et sett av noder som er lenket sammen med pekere (introdusert i forelesning 9). Hver node inneholder følgende felt. En nøkkel (og eventuelt satelittdata) En peker til venstre subtre En peker til høyre subtre En peker foreldernoden I et binært søketre T peker T.root til rotnoden, og T.root.p = nil.
4 Hva Gjør et Binært Tre til et Binært Søketre? Det som skiller et binært søketre fra et normalt binært tre er følgende egenskap. Hvis y er i venstre subtre til x, så må y.key x.key Hvis y er i høyre subtre til x, så må y.key x.key
5 Eksempler på et Binære Søketrær Figurene under viser to binære søketrær. a viser et noenlunde komplett binært søketre b viser et ubalansert binært søketre
6 Inorder-Tree-Walk Algoritmen Egenskapen til binære søketrær gjør det mulig å skrive ut elementene i sortert rekkefølge ved å utføre en såkalt inorder traversering (inorder tree walk). Hvordan Inorder-Tree-Walk fungerer Sjekk slik at nåværende node x ikke er nil. Skriv ut alle verdiene i venstre subtre rekursivt Skriv ut x Skriv ut alle verdiene i høyre subtre rekursivt
7 Inorder-Tree-Walk Algoritmen Pseukoden til Inorder-Tree-Walk er listet under. Intuitivt kan vi si at kjøretiden er Θ(n) siden algoritmen skriver ut alle elementene i treet en gang. Fagboka gir et detaljert bevis.
8 Andre Traverseringer Inorder-Tree-Walk algoritmen travererer det binære treet inorder. Dette gir mening når det er snakk om utskrifter i rekkefølge, men hvis det var snakk om andre operasjoner kan det være fordelaktig med andre traverseringer. Ved å flytte på koden som jobber på nåværende nodes element kan vi oppnå andre traverseringer. Flytter koden før det første rekursive kallet får vi preorder traversering. Flytter koden etter det siste rekursive kallet får vi postorder traversering.
9 Tree-Search Algoritmen Pseudokoden for Tree-Search algoritmen kan brukes for å utføre spørringer på et binært søketre. Det første kallet til algoritmen blir Tree-Search(T. root, k). Kjøretiden til algoritmen er avhengig av høyden til treet i.e. O(h). Fagboka gir også pseudokode til en iterativ utgave av algoritmen.
10 Tree-Minimum og Tree-Maximum Algoritmene Egenskapen til binære søketrær gjør at det er svært enkelt å hente ut største og minste verdi. Tree-Minimum og Tree-Maximum algoritmene returnerer henholdsvis det minste og største elementet i treet. Kjøretiden til begge algoritmene er O(h).
11 Tree-Successor og Tree-Predecessor Algoritmene Hvis vi antar at nøklene er unike, så er etterfølgeren til en node x node y slik at y.key er den minste nøkkelen større enn x.key. Vi kan finne en etterfølger (successor) utifra strukturen på treet i.e. ingen sammenligning av nøkler er nødvendig. Det er to tilfeller: Hvis node x har et høyre subtre (som ikke er nil), så er etterfølgeren minste verdi i høyre subtre. Hvis node x ikke har et høyre subtre må vi gå oppover i treet til vi finner en node som har x i venstre subtre. Forgjengeren (predecessor) operasjonen er symmetrisk med etterfølger operasjonen.
12 Tree-Successor og Tree-Predecessor Algoritmene Pseudokoden til Tree-Successor er listet under. Kjøretiden til algoritmen er O(h) siden vi enten går opp eller ned i treet i en enkel sti.
13 Tree-Insert Algoritmen Innsetting i et binært tre er nokså enkelt. Vi må bare traversere nedover i treet til vi finner korrekt plass for det nye elementet. Vi ivaretar to pekere x og y hvor x er gjeldende node som sjekkes og y er foreldernoden til x. Vi går til x.left hvis z.key < x.key og til x.left hvis z.key x.key. Vi har kommet til korrekt posisjon når x = nil. Sett inn det nye elementet z i enten y.left eller y.right.
14 Tree-Insert Algoritmen Pseudokoden for innsetting i et binært søketre er listet under. Kjøretiden til Tree-Insert er bundet av høyden til treet i.e. O(h).
15 Tree-Delete Algoritmen Det er litt mer komplisert å slette fra et binært søketre enn det er å legge til nye elementer. Konseptuelt så har vi tre tilfeller når vi skal slette element z: z har ingen barn vi kan bare fjerne den direkte z har et barn vi lar barnet erstatte plassen til z i treet z har to barn vi finner z sin etterfølger y og lar den erstatte z (dette er litt lettere sagt enn gjort). Disse tilfellene er strukturert litt annerledes i algoritmen, men ideen er den samme.
16 Hjelpefunksjonen Transplant Transplant hjelpefunksjonen gjør det lett å erstatte et subtre med et annet. Gjør u sin forelder til v sin forelder (hvis ikke u er rotnoden hvor v blir den nye roten) Forelderen til u får v som enten venstre eller høyre barn avhengig av hvor u var plasert v.left og v.right blir ikke oppdatert
17 Tree-Delete Algoritmen Tree-Delete algoritmen har fire ulike tilfeller Hvis z ikke har noe venstre barn så erstatter vi z med det høyre barnet (hvis høyre barn er nil så dekker det tilfellet med ingen barn) Hvis z har bare ett venstre barn så erstatter vi z med det venstre barnet
18 Tree-Delete Algoritmen Tree-Delete algoritmen har fire ulike tilfeller. Vi har allerede dekt de to tilfellene av med ingen eller et barn. La oss nå se på tilfellet hvor noden som skal fjernes har to barn. Vi finner z sin etterfølger y i høyre subtre. Hvis y sin forelder er z kan vi erstatte z med y og la y sitt høyre barn være som det er.
19 Tree-Delete Algoritmen Vi har nå dekket tre tilfeller. Det siste tilfellet forekommer når z har to barn, og etterfølgeren y sin forelder ikke er z. Her må vi utføre to steg. Erstatt y med y sitt høyre barn. Erstatt z med y.
20 Tree-Delete Algoritmen Pseudokoden til Tree-Delete er listet under. Kjøretiden til algoritmen er O(h).
21 Hvordan Minimere Kjøretiden Vi har sett flere ganger denne forelesningen at kjøretiden til operasjonene på binære søketrær er O(h). I verstefall er denne høyden den samme som antall elementer i treet i.e. O(n). I bestefall er høyden O(log n). I de neste forelesningene skal vi se på alternative søketrær som sørger for at treet er balansert. Fagboka presenterer også en randomisert utgave av binære søketrær som gjør at verstefall kan unngås.
Lars Vidar Magnusson
B-Trær Lars Vidar Magnusson 5.3.2014 Kapittel 18 B-trær Standard operasjoner Sletting B-Trær B-trær er balanserte trær som er designet for å fungere bra på sekundære lagringsmedium e.g. harddisk. Ligner
Lars Vidar Magnusson Kapittel 13 Rød-Svarte (Red-Black) trær Rotasjoner Insetting Sletting
Rød-Svarte Trær Lars Vidar Magnusson 21.2.2014 Kapittel 13 Rød-Svarte (Red-Black) trær Rotasjoner Insetting Sletting Rød-Svarte Trær Rød-Svarte trær (red-black trees) er en variasjon binære søketrær som
Definisjon av binært søketre
Binære søketrær Definisjon av binært søketre For alle nodene i et binært søketre gjelder: Alle verdiene i nodens venstre subtre er mindre enn verdien i noden Alle verdiene i nodens høyre subtre er større
Definisjon: Et sortert tre
Binære søketrær Definisjon: Et sortert tre For alle nodene i et binært søketre gjelder: Alle verdiene i nodens venstre subtre er mindre enn verdien i noden Alle verdiene i nodens høyre subtre er større
Definisjon. I et binært tre har hver node enten 0, 1 eller 2 barn
Binære trær Definisjon I et binært tre har hver node enten 0, 1 eller 2 barn Rekursiv definisjon: Et binært tre er enten tomt, eller: Består av en rotnode og to binære trær som kalles venstre subtre og
INF2220: Forelesning 2
INF2220: Forelesning 2 Mer om analyse av algoritmer Analyse av binære søketrær Balanserte søketrær Rød-svarte trær (kapittel12.2) B-trær (kapittel 4.7) ANALYSE AV ALGORITMER 2 Analyse av tidsforbruk Hvor
Fra Kap.10 Binære søketre (BS-tre) Sist oppdatert 20.03.10 Definere en abstrakt datastruktur binært søketre. Vise hvordan binær søketre kan brukes
Fra Kap.10 Binære søketre (BS-tre) Sist oppdatert 20.03.10 Definere en abstrakt datastruktur binært søketre. Vise hvordan binær søketre kan brukes til å løse problemer. Undersøke ulike implementasjoner
Heapsort. Lars Vidar Magnusson Kapittel 6 Heaps Heapsort Prioritetskøer
Heapsort Lars Vidar Magnusson 24.1.2014 Kapittel 6 Heaps Heapsort Prioritetskøer Sorterings Problemet Sorterings problemet er et av de mest fundementalske problemene innen informatikken. Vi sorterer typisk
INF2220: Forelesning 2
INF2220: Forelesning 2 Balanserte søketrær Rød-svarte trær (kapittel12.2) B-trær (kapittel 4.7) REPETISJON: BINÆRE SØKETRÆR 2 Binære søketrær 8 4 12 2 7 9 15 6 11 13 16 For enhver node i et binært søketre
INF2220: Forelesning 2. Balanserte søketrær Rød-svarte trær (kapittel12.2) B-trær (kapittel 4.7)
INF2220: Forelesning 2 Balanserte søketrær Rød-svarte trær (kapittel12.2) B-trær (kapittel 4.7) REPETISJON: BINÆRE SØKETRÆR 2 Binære søketrær 8 4 12 2 7 9 15 6 11 13 16 For enhver node i et binært søketre
Løsningsforslag for Obligatorisk Oppgave 3. Algoritmer og Datastrukturer ITF20006
Løsningsforslag for Obligatorisk Oppgave 3 Algoritmer og Datastrukturer ITF20006 Lars Vidar Magnusson Frist 28.03.14 Den tredje obligatoriske oppgaven tar for seg forelesning 9 til 13, som dreier seg om
Et eksempel: Åtterspillet
Trær Et eksempel: Åtterspillet To spillere som «trekker» annenhver gang I hvert trekk velges et av tallene 1, 2, 3, men ikke tallet som motspiller valgte i forrige trekk Valgte tall summeres fortløpende
Binære trær: Noen algoritmer og anvendelser
Binære trær: Noen algoritmer og anvendelser Algoritmer / anvendelser: Søking i usortert binært tre Telling av antall noder og nivåer i treet Traversering av binære trær Binære uttrykkstrær Kunstig intelligens(?):
Heap* En heap er et komplett binært tre: En heap er også et monotont binært tre:
Heap Heap* En heap er et komplett binært tre: Alle nivåene i treet, unntatt (muligens) det nederste, er alltid helt fylt opp med noder Alle noder på nederste nivå ligger til venstre En heap er også et
Enkle datastrukturer. Lars Greger Nordland Hagen. Introduksjon til øvingsopplegget og gjennomgang av python
1 Enkle datastrukturer Lars Greger Nordland Hagen [email protected] Introduksjon til øvingsopplegget og gjennomgang av python 2 I dag Stack Kø (queue) Lenkede lister (linked list) Trær Binære søketrær
Selv-balanserende søketrær
Selv-balanserende søketrær Georgy Maksimovich Adelson-Velsky Evgenii Mikhailovich Landis Søketrær og effektivitet O(log n) effektivitet av binære søketrær kan ikke garanteres Treet til venstre har høyde
Heap og prioritetskø. Marjory the Trash Heap fra Fraggle Rock
Heap og prioritetskø Marjory the Trash Heap fra Fraggle Rock Binær heap En heap er et komplett binært tre: Alle nivåene i treet, unntatt (muligens) det nederste, er alltid helt fylt opp med noder Alle
Trær. En datastruktur (og abstrakt datatype ADT)
Trær Trær En datastruktur (og abstrakt datatype ADT) Trær En datastruktur (og abstrakt datatype ADT) En graf som 8lfredss8ller bestemte krav Object [] int [] tall array element 0 1 2 3 4 5 0 1 2 3 4 5
INF110 Algoritmer og datastrukturer TRÆR. Vi skal i denne forelesningen se litt på ulike typer trær:
TRÆR Vi skal i denne forelesningen se litt på ulike typer trær: Generelle trær (kap. 4.1) Binærtrær (kap. 4.2) Binære søketrær (kap. 4.3) Den siste typen trær vi skal behandle, B-trær (kap. 4.7) kommer
INF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2015 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 4: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2220 H2015, forelesning
Flerveis søketrær og B-trær
Flerveis søketrær og B-trær Flerveis (multi-way, n-ært) søketre Generalisering av binært søketre Binært søketre: Hver node har maksimalt 2 barn og 1 nøkkelverdi. Barna ligger sortert på verdi i forhold
INF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2015 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 4: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2220 H2015, forelesning
Binære Søketre. Egenskap. Egenskap : Grafisk. Egenskap : Kjøretid. Egenskap : Kjøretid. Egenskap : Oppsumering. Binære Søketre
genskap inære Søketre inære Søketre t binært søketre er organisert som et binærtre, og har følgende egenskap a x være en node i et binært søketre. vis y er en node i x s venstre subtre, vil verdi[y] verdi[x]
IN Algoritmer og datastrukturer
IN2010 - Algoritmer og datastrukturer HØSTEN 2018 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 3: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2010 H2018, forelesning
EKSAMEN. Dato: 28. mai 2018 Eksamenstid: 09:00 13:00
EKSAMEN Emnekode: ITF20006 Emne: Algoritmer og datastrukturer Dato: 28. mai 2018 Eksamenstid: 09:00 13:00 Hjelpemidler: Alle trykte og skrevne Faglærer: Jan Høiberg Om eksamensoppgavene: Oppgavesettet
INF2220: Forelesning 1. Praktisk informasjon Analyse av algoritmer (kapittel 2) (Binær)trær (kapittel )
INF2220: Forelesning 1 Praktisk informasjon Analyse av algoritmer (kapittel 2) (Binær)trær (kapittel 4.1-4.3 + 4.6) PRAKTISK INFORMASJON 2 Praktisk informasjon Kursansvarlige Ragnhild Kobro Runde ([email protected])
INF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2016 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 4: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2220 H2016, forelesning
Binær heap. En heap er et komplett binært tre:
Heap Binær heap En heap er et komplett binært tre: Alle nivåene i treet, unntatt (muligens) det nederste, er alltid helt fylt opp med noder Alle noder på nederste nivå ligger så langt til venstre som mulig
Kap.12. Flervegssøketre. Studerer 2-3 og 2-4 trær. Sist oppdatert
Kap.12 Flervegssøketre Sist oppdatert 12.04.10 Studerer 2-3 og 2-4 trær Motivasjon n maks = antall elementer i et fullt binært tre med nivåer 0 k ; (en node har ett element) n maks = 2 0 + 2 1 + + 2 k
Binære søketrær. En ordnet datastruktur med raske oppslag. Sigmund Hansen
Binære søketrær En ordnet datastruktur med raske oppslag Sigmund Hansen Lister og trær Rekke (array): 1 2 3 4 Lenket liste (dobbelt-lenket): 1 2 3 4 Binært søketre: 3 1 4 2 Binære
Ny/utsatt EKSAMEN. Dato: 5. januar 2018 Eksamenstid: 09:00 13:00
Ny/utsatt EKSAMEN Emnekode: ITF20006 Emne: Algoritmer og datastrukturer Dato: 5. januar 2018 Eksamenstid: 09:00 13:00 Hjelpemidler: Alle trykte og skrevne Faglærer: Jan Høiberg Om eksamensoppgavene: Oppgavesettet
INF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2017 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 4: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2220 H2017, forelesning
Binære søketrær. Et notat for INF1010 Stein Michael Storleer 16. mai 2013
Binære søketrær Et notat for INF Stein Michael Storleer 6. mai 3 Dette notatet er nyskrevet og inneholder sikkert feil. Disse vil bli fortløpende rettet og datoen over blir oppdatert samtidig. Hvis du
Hashtabeller. Lars Vidar Magnusson Kapittel 11 Direkte adressering Hashtabeller Chaining Åpen-adressering
Hashtabeller Lars Vidar Magnusson 12.2.2014 Kapittel 11 Direkte adressering Hashtabeller Chaining Åpen-adressering Dictionaries Mange applikasjoner trenger dynamiske sett som bare har dictionary oparsjonene
Dagens plan: INF2220 - Algoritmer og datastrukturer. Repetisjon: Binære søketrær. Repetisjon: Binære søketrær
Dagens plan: INF2220 - lgoritmer og datastrukturer HØTEN 2007 Institutt for informatikk, Universitetet i Oslo (kap. 4.7) (kap. 12.2) Interface ollection og Iterator (kap. 3.3) et og maps (kap. 4.8) INF2220,
Datastrukturer. Stakker (Stacks) Hva er en datastruktur? Fordeler / Ulemper. Generelt om Datastrukturer. Stakker (Stacks) Elementære Datastrukturer
Hva er en datastruktur? Datastrukturer Elementære Datastrukturer En datastruktur er en systematisk måte å lagre og organisere data på, slik at det er lett å aksessere og modifisere dataene Eksempler på
Trær. Består av sammenkoblede noder Hver node har 0 eller flere barne-noder. Må være asyklisk. Et tre med n noder har n-1 kanter.
Generelle trær: Trær Består av sammenkoblede noder Hver node har 0 eller flere barne-noder. Må være asyklisk. Et tre med n noder har n-1 kanter. løvnoder kant rotnode sub-tre 1 Generelle trær: Oppbygging
Kap 9 Tre Sist oppdatert 15.03
Kap 9 Tre Sist oppdatert 15.03 Definere et tre som en datastruktur. Definere begreper knyttet til tre. Diskutere mulige implementasjoner av tre Analysere implementasjoner av tre som samlinger. Diskutere
Repetisjon: Binære. Dagens plan: Rød-svarte trær. Oppgave (N + 1)!
Repetisjon: Binære søketrær Dagens plan: Rød-svarte trær (kap. 12.2) B-trær (kap. 4.7) bstrakte datatyper (kap. 3.1) takker (kap. 3.3) For enhver node i et binært søketre gjelder: lle verdiene i venstre
EKSAMENSOPPGAVE. INF-1101 Datastrukturer og algoritmer. Adm.bygget, rom K1.04 og B154 Ingen
Fakultet for naturvitenskap og teknologi EKSAMENSOPPGAVE Eksamen i: Dato: 15.mai 2018 Klokkeslett: 09:00 13:00 Sted: Tillatte hjelpemidler: Adm.bygget, rom K1.04 og B154 Ingen Type innføringsark (rute/linje):
Balanserte binære søketrær
Balanserte trær Balanserte binære søketrær Balanserte binære søketrær høyden (l treet er O(log 2 n) AVL trær rød-svarte trær svake AVL trær splaytrær heaps AVL trær rød-svarte trær svake AVL trær splaytrær
Minimum Spenntrær - Kruskal & Prim
Minimum Spenntrær - Kruskal & Prim Lars Vidar Magnusson 4.4.2014 Kapittel 23 Kruskal algoritmen Prim algoritmen Kruskal Algoritmen Kruskal algoritmen kan beskrives med følgende punkter. Vi har en en sammenkoblet
PG4200 Algoritmer og datastrukturer Forelesning 7
PG4200 Algoritmer og datastrukturer Forelesning 7 Lars Sydnes, NITH 19. mars 2014 I. TERMINOLOGI FOR TRÆR TRÆR Lister: Lineære Trær: Hierarkiske Modell / Språk: Bestanddeler: Noder, forbindelser. Forbindelse
Quicksort. Lars Vidar Magnusson Kapittel 7 Quicksort Randomisert Quicksort Analyse av Quicksort
Quicksort Lars Vidar Magnusson 29.1.2014 Kapittel 7 Quicksort Randomisert Quicksort Analyse av Quicksort Om Quicksort Quicksort er en svært populær sorteringsalgoritme. Algoritmen har i verstefall en kjøretid
Løsningsforslag. Oppgave 1.1. Oppgave 1.2
Løsningsforslag Oppgave 1.1 7 4 10 2 5 9 12 1 3 6 8 11 14 13 Oppgave 1.2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 Oppgave 1.3 Rekursiv løsning: public Node settinn(person ny, Node rot) if (rot == null) return
INF2220: Time 12 - Sortering
INF0: Time 1 - Sortering Mathias Lohne mathialo Noen algoritmer Vi skal nå se på noen konkrete sorteringsalgoritmer. Gjennomgående i alle eksempler vil vi sortere tall etter tallverdi, men som diskutert
Et eksempel: Åtterspillet
Trær Et eksempel: Åtterspillet To spillere som «trekker» annenhver gang I hvert trekk velges et av tallene 1, 2, 3, men ikke tallet som motspiller valgte i forrige trekk Valgte tall summeres fortløpende
Prioritetskøer. Binære heaper Venstrevridde heaper (Leftist) Binomialheaper Fibonacciheaper
Prioritetskøer Binære heaper Venstrevridde heaper (Leftist) Binomialheaper Fibonacciheaper Prioritetskøer er viktige i bla. operativsystemer (prosesstyring i multitaskingssystemer), og søkealgoritmer (A,
EKSAMEN med løsningsforslag
EKSAMEN med løsningsforslag Emnekode: ITF20006 Emne: Algoritmer og datastrukturer Dato: Eksamenstid: 20. mai 2009 kl 09.00 til kl 13.00 Hjelpemidler: 8 A4-sider (4 ark) med egne notater Kalkulator Faglærer:
Prioritetskøer. Prioritetskøer. Binære heaper (vanligst) Prioritetskøer
Binære heaper (Leftist) Prioritetskøer Prioritetskøer er viktige i bla. operativsystemer (prosesstyring i multitaskingssystemer), og søkealgoritmer (A, A*, D*, etc.), og i simulering. Prioritetskøer Prioritetskøer
INF2220: Time 4 - Heap, Huffmann
INF0: Time 4 - Heap, Huffmann Mathias Lohne mathialo Heap (prioritetskø) En heap (også kalt prioritetskø) er en type binært tre med noen spesielle struktur- og ordningskrav. Vi har to typer heap: min-
Grunnleggende Grafalgoritmer II
Grunnleggende Grafalgoritmer II Lars Vidar Magnusson March 17, 2015 Kapittel 22 Dybde-først søk Topologisk sortering Relasjonen til backtracking Dybde-Først Søk Dybde-først søk i motsetning til et bredde-først
Algoritmer og Datastrukturer
Eksamen i Algoritmer og Datastrukturer IAI 20102 Høgskolen i Østfold Avdeling for informatikk og automatisering Lødag 5. juni 2004, kl. 09.00-13.00 Hjelpemidler: Alle trykte og skrevne hjelpemidler. Kalkulator.
Notater til INF2220 Eksamen
Notater til INF2220 Eksamen Lars Bjørlykke Kristiansen December 13, 2011 Stor O notasjon Funksjon Navn 1 Konstant log n Logaritmisk n Lineær n log n n 2 Kvadratisk n 3 Kubisk 2 n Eksponensiell n! Trær
Algoritmer og Datastrukturer
Eksamen i Algoritmer og Datastrukturer IAI 20102 Høgskolen i Østfold Avdeling for informatikk og automatisering Lødag 5. juni 2004, kl. 09.00-13.00 LØSNINGSFORSLAG 1 Del 1 60% Oppgave 1.1-10% Forklar kort
Eksamen i IN 110, 18. mai 1993 Side 2 Del 1 (15%) Vi skal se på prioritetskøer av heltall, der vi hele tiden er interessert i å få ut den minste verdi
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i Eksamensdag: 18. mai 1993 Tid for eksamen: 9.00 15.00 Oppgavesettet er på 7 sider. Vedlegg: Tillatte hjelpemidler: IN 110 Algoritmer
Grådige algoritmer. Lars Vidar Magnusson Kapittel 16. Aktivitetvelgingsproblemet Huffmankoder
Grådige Algoritmer Lars Vidar Magnusson 12.3.2014 Kapittel 16 Grådige algoritmer Aktivitetvelgingsproblemet Huffmankoder Ideen bak Grådige Algoritmer Ideen bak grådige algoritmer er å løse optimaliseringsproblem
Algoritmer og datastrukturer Eksamen
Eksamen - Algoritmer og datastrukturer - Høgskolen i Oslo og Akershus - 27.11.2012 Side 1 av 6 Algoritmer og datastrukturer Eksamen 27.11.2012 Eksamensoppgaver Råd og tips: Bruk ikke for lang tid på et
Algoritmer og Datastrukturer
Eksamen i Algoritmer og Datastrukturer IAI 21899 Høgskolen i Østfold Avdeling for informatikk og automatisering Lørdag 15. desember 2001, kl. 09.00-14.00 Hjelpemidler: Alle trykte og skrevne hjelpemidler.
INF2220: Forelesning 1
INF2220: Forelesning 1 Praktisk informasjon Analyse av algoritmer (kapittel 2) (Binær)trær (kapittel 4.1-4.3 + 4.6) Praktisk informasjon 2 Praktisk informasjon Kursansvarlige Ingrid Chieh Yu de Vibe ([email protected])
Hva er en algoritme? INF HØSTEN 2006 INF1020. Kursansvarlige Ragnar Normann E-post: Dagens tema
va er en algoritme? Vanlig sammenligning: Oppskrift. nput lgoritme NF1020 - ØSTEN 2006 Kursansvarlige Ragnar Normann E-post: [email protected] Output Knuth : tillegg til å være et endelig sett med regler
Søkeproblemet. Gitt en datastruktur med n elementer: Finnes et bestemt element (eller en bestemt verdi) x lagret i datastrukturen eller ikke?
Søking Søkeproblemet Gitt en datastruktur med n elementer: Finnes et bestemt element (eller en bestemt verdi) x lagret i datastrukturen eller ikke? Effektiviteten til søkealgoritmer avhenger av: Om datastrukturen
Algoritmer og datastrukturer Kapittel 9 - Delkapittel 9.1
Delkapittel 9.1 Generelt om balanserte trær Side 1 av 13 Algoritmer og datastrukturer Kapittel 9 - Delkapittel 9.1 9.1 Generelt om balanserte trær 9.1.1 Hva er et balansert tre? Begrepene balansert og
INF Algoritmer og datastrukturer. Hva er INF2220? Algoritmer og datastrukturer
Praktiske opplysninger INF2220 - Algoritmer og datastrukturer HØSTEN 2007 Institutt for informatikk, Universitetet i Oslo Tid og sted: Mandag kl. 12:15-14:00 Store auditorium, Informatikkbygningen Kursansvarlige
PQ: HEAP. Heap. Er disse heap er? Hvordan implementere heap:
PQ: HEAP Ingen sammenheng med memory heap Definisjon og data-invarianter for heap InsertKey og RemoveMin for heap Kompleksitet for operasjoner: O(log n) Prioritetskø impl vha Heap Heap En heap er et binært
EKSAMEN. Algoritmer og datastrukturer
EKSAMEN Emnekode: ITF20006 Emne: Algoritmer og datastrukturer Dato: Eksamenstid: 20. mai 2009 kl 09.00 til kl 13.00 Hjelpemidler: 8 A4-sider (4 ark) med egne notater Kalkulator Faglærer: Gunnar Misund
Dagens tema. INF Algoritmer og datastrukturer. Binærtrær. Generelle trær
Dagens tema INF2220 - Algoritmer og datastrukturer HØSTEN 2007 Institutt for informatikk, Universitetet i Oslo INF2220, forelesning 2: Binærtrær og abstrakte datatyper (ADT) Kort repetisjon Generelle trær
EKSAMEN Løsningsforslag. med forbehold om bugs :-)
1 EKSAMEN Løsningsforslag med forbehold om bugs :-) Emnekode: ITF20006 000 Dato: 20. mai 2011 Emne: Algoritmer og datastrukturer Eksamenstid: 09:00 til 13:00 Hjelpemidler: 8 A4-sider (4 ark) med egne notater
Eksamensoppgave i TDT4120 Algoritmer og datastrukturer
Eksamensoppgave i TDT4120 Algoritmer og datastrukturer Faglig kontakt under eksamen Magnus Lie Hetland Tlf. 91851949 Eksamensdato 11. august 2014 Eksamenstid (fra til) 0900 1300 Hjelpemiddelkode D. Ingen
Eksamensoppgave i TDT4120 Algoritmer og datastrukturer
Eksamensoppgave i TDT4120 Algoritmer og datastrukturer Faglig kontakt under eksamen Magnus Lie Hetland Tlf. 91851949 Eksamensdato 11. august 2014 Eksamenstid (fra til) 0900 1300 Hjelpemiddelkode D. Ingen
Oppgave 1 LØSNINGSFORSLAG. Eksamen i INF desember Betrakt følgende vektede, urettede graf:
INF100 Algoritmer og datastrukturer INF100 Algoritmer og datastrukturer Oppgave 1 LØSNINGSFORSLAG Betrakt følgende vektede, urettede graf: V 1 V Eksamen i INF100 1. desember 004 V V 4 V 4 V V Ragnar Normann
Oppsummering. MAT1030 Diskret matematikk. Oppsummering. Oppsummering. Eksempel
MAT1030 Diskret matematikk Forelesning 26: Trær Sist forelesning snakket vi i hovedsak om trær med rot, og om praktisk bruk av slike. rot Dag Normann Matematisk Institutt, Universitetet i Oslo barn barn
Eksempel: Uttrykkstrær I uttrykkstrær inneholder bladnodene operander (konstanter, variable,... ), mens de interne nodene inneholder operatorer.
TRÆR Generelle trær Dagens plan: Kort repetisjon Generelle trær Binærtrær Implementasjon Traversering Binære søketrær Definisjon Søking, innsetting og sletting Gjennomsnitts-analyse (!) Eksempel: Ibsens
Datastrukturer for rask søking
Søking Søkeproblemet Gitt en datastruktur med n elementer: Finnes et bestemt element (eller en bestemt verdi) x lagret i datastrukturen eller ikke? Effektiviteten til søkealgoritmer avhenger av: Om datastrukturen
UNIVERSITETET I OSLO
Eksamen i UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamensdag: 13. desember 2011 Tid for eksamen: 14.30 18.30 Oppgavesettet er på 7 sider. Vedlegg: INF2220 lgoritmer og datastrukturer
INF1010 Rekursive metoder, binære søketrær. Algoritmer: Mer om rekursive kall mellom objekter Ny datastruktur: binært tre
INF1010 Rekursive metoder, binære søketrær Algoritmer: Mer om rekursive kall mellom objekter Ny datastruktur: binært tre public void skrivutmeg ( ) { System. out. println (navn + " er venn med " + minbestevennheter
E K S A M E N. Algoritmiske metoder I. EKSAMENSDATO: 11. desember HINDA / 00HINDB / 00HINEA ( 2DA / 2DB / 2EA ) TID:
Høgskolen i Gjøvik Avdeling for Teknologi E K S A M E N FAGNAVN: FAGNUMMER: Algoritmiske metoder I L 189 A EKSAMENSDATO: 11. desember 2001 KLASSE: 00HINDA / 00HINDB / 00HINEA ( 2DA / 2DB / 2EA ) TID: 09.00-14.00
NITH PG4200 Algoritmer og datastrukturer Løsningsforslag Eksamen 4.juni 2013
NITH PG00 Algoritmer og datastrukturer Løsningsforslag Eksamen.juni 0 Dette løsningsforslaget er til tider mer detaljert enn det man vil forvente av en eksamensbesvarelse. Det er altså ikke et eksempel
Magnus Moan (Undertegnede) Enkle datastrukturer, trær, traversering og rekursjon
1 Enkle datastrukturer, trær, traversering og rekursjon Magnus Moan (Undertegnede) [email protected] Enkle datastrukturer, trær, traversering og rekursjon 2 Dagens plan Praktisk Enkle datastrukturer Stack
Algoritmer og Datastrukturer IAI 21899
Eksamen i Algoritmer og Datastrukturer IAI 21899 Høgskolen i Østfold Avdeling for informatikk og automatisering Torsdag 30. november 2000, kl. 09.00-14.00 LØSNINGSFORSLAG 1 Del 1, Binære søketrær Totalt
INF1010 Binære søketrær ++
INF1010 Binære søketrær ++ Programeksempler med insetting, gjenfinning av noder i et binært søketre samt eksempler på hvordan lage en liste av et binærtre. Hva må du kunne om binære søketrær i INF1010
EKSAMEN. Dato: 9. mai 2016 Eksamenstid: 09:00 13:00
EKSAMEN Emnekode: ITF20006 Emne: Algoritmer og datastrukturer Dato: 9. mai 2016 Eksamenstid: 09:00 13:00 Hjelpemidler: Alle trykte og skrevne Faglærer: Jan Høiberg Om eksamensoppgavene: Oppgavesettet består
EKSAMENSOPPGAVE. NB! Det er ikke tillatt å levere inn kladd sammen med besvarelsen
Fakultet for naturvitenskap og teknologi EKSAMENSOPPGAVE Eksamen i: INF-1101 Datastrukturer og algoritmer Dato: 18.05.2016 Klokkeslett: 09:00 13:00 Sted: Teorifagbygget, hus 3, 3.218 Tillatte hjelpemidler:
Divide-and-Conquer II
Divide-and-Conquer II Lars Vidar Magnusson 1712014 Kapittel 4 Analyse av divide-and-conquer algoritmer ved hjelp av rekursjonstrær Analyse av divide-and-conquer algoritmer ved hjelp av masterteoremet Løse
Emnekode: I-Dato: I ~ Antall oppgaver: I I Aiie -sk:i=rftlige - bme trykte og håndskrevne, samt alle typer
G høgskolen i oslo I Emne: Emnekode: ~ I Faglig veileder: Algoritmer og datastrukturer LO 140 A UlfUttersrud I Gruppe(r): I Eksamensoppgaven IbestAr av: - l Tillatte hjelpemidler: - - Antall sider (inkl.
PG 4200 Algoritmer og datastrukturer Innlevering 2
PG 4200 Algoritmer og datastrukturer Innlevering 2 Frist: Mandag 21.april 2014 kl 23.55 Utdelt materiale: Se zip-filen innlevering2.zip. Innlevering: Lever en zip-fil som inneholder følgende: PG4200_innlevering_2.pdf:
Algoritmer og datastrukturer Løsningsforslag
Algoritmer og datastrukturer Løsningsforslag Eksamen 30. november 2010 Oppgave 1A Et turneringstre for en utslagsturnering med n deltagere blir et komplett binærtre med 2n 1 noder. I vårt tilfelle får
Rekursiv programmering
Rekursiv programmering Babushka-dukker En russisk Babushkadukke er en sekvens av like dukker inne i hverandre, som kan åpnes Hver gang en dukke åpnes er det en mindre utgave av dukken inni, inntil man
