Et eksempel: Åtterspillet

Like dokumenter
Et eksempel: Åtterspillet

Et eksempel: Åtterspillet

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

Kap 9 Tre Sist oppdatert 15.03

Flerveis søketrær og B-trær

Fra Kap.10 Binære søketre (BS-tre) Sist oppdatert Definere en abstrakt datastruktur binært søketre. Vise hvordan binær søketre kan brukes

Object [] element. array. int [] tall

PG4200 Algoritmer og datastrukturer Forelesning 7

Heap og prioritetskø. Marjory the Trash Heap fra Fraggle Rock

Definisjon av binært søketre

Definisjon: Et sortert tre

Kap.12. Flervegssøketre. Studerer 2-3 og 2-4 trær. Sist oppdatert

Balanserte binære søketrær

INF2220: Forelesning 2

INF2220: Forelesning 2. Balanserte søketrær Rød-svarte trær (kapittel12.2) B-trær (kapittel 4.7)

Lars Vidar Magnusson

INF2220: Forelesning 2

INF2220: Forelesning 1. Praktisk informasjon Analyse av algoritmer (kapittel 2) (Binær)trær (kapittel )

Binære søketrær. Et notat for INF1010 Stein Michael Storleer 16. mai 2013

Rekursiv programmering

Trær. En datastruktur (og abstrakt datatype ADT)

Repetisjon: Binære. Dagens plan: Rød-svarte trær. Oppgave (N + 1)!

Binære søketrær. En ordnet datastruktur med raske oppslag. Sigmund Hansen

... Når internminnet blir for lite. Dagens plan: Løsning: Utvidbar hashing. hash(x) katalog. O modellen er ikke lenger gyldig ved

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

Lars Vidar Magnusson

UNIVERSITETET I OSLO

INF2220: Gruppe me 2. Mathias Lohne Høsten 2017

Binære trær: Noen algoritmer og anvendelser

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.

MAT1030 Diskret Matematikk

Disjunkte mengder ADT

Ekstra ark kan legges ved om nødvendig, men det er meningen at svarene skal få plass i rutene på oppgavearkene. Lange svar teller ikke positivt.

Datastrukturer. Stakker (Stacks) Hva er en datastruktur? Fordeler / Ulemper. Generelt om Datastrukturer. Stakker (Stacks) Elementære Datastrukturer

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

INF Algoritmer og datastrukturer

Lars Vidar Magnusson Kapittel 13 Rød-Svarte (Red-Black) trær Rotasjoner Insetting Sletting

EKSAMEN. Dato: 18. mai 2017 Eksamenstid: 09:00 13:00

Dagens plan: INF Algoritmer og datastrukturer. Repetisjon: Binære søketrær. Repetisjon: Binære søketrær

Dagens plan: INF Algoritmer og datastrukturer. Eksempel. Binære Relasjoner

Algoritmer og datastrukturer Kapittel 9 - Delkapittel 9.4

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

Uke 5 Disjunkte mengder

Oppsummering. MAT1030 Diskret matematikk. Oppsummering. Oppsummering. Eksempel

Eksamen iin115 og IN110, 15. mai 1997 Side 2 Oppgave 1 Trær 55 % Vi skal i denne oppgaven se på en form for søkestrukturer som er spesielt godt egnet

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

Sist forelesning snakket vi i hovedsak om trær med rot, og om praktisk bruk av slike. rot. barn

MAT1030 Diskret matematikk

UNIVERSITETET I OSLO. Det matematisk-naturvitenskapelige fakultet

Løsnings forslag i java In115, Våren 1998

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet

Anvendelser av grafer

Notater til INF2220 Eksamen

Enkle datastrukturer. Lars Greger Nordland Hagen. Introduksjon til øvingsopplegget og gjennomgang av python

Algoritmer og datastrukturer Kapittel 9 - Delkapittel 9.2

INF Algoritmer og datastrukturer. Hva er INF2220? Algoritmer og datastrukturer

Avsluttende eksamen i TDT4120 Algoritmer og datastrukturer

INF2220: Time 4 - Heap, Huffmann

Magnus Moan (Undertegnede) Enkle datastrukturer, trær, traversering og rekursjon

INF2810: Funksjonell Programmering. Lokale variabler. Og trær.

Prioritetskøer. Binære heaper Venstrevridde heaper (Leftist) Binomialheaper Fibonacciheaper

Oppgave 1. Oppgave 2. Høgskolen i Østfold Avdeling for informasjonsteknologi

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

Algoritmer og datastrukturer Eksamen

Algoritmer og datastrukturer Eksamen

INF Algoritmer og datastrukturer

Oppgave 1 LØSNINGSFORSLAG. Eksamen i INF desember Betrakt følgende vektede, urettede graf:

INF Algoritmer og datastrukturer

UNIVERSITETET I OSLO

Minimum Spenntrær - Kruskal & Prim

Binære Søketre. Egenskap. Egenskap : Grafisk. Egenskap : Kjøretid. Egenskap : Kjøretid. Egenskap : Oppsumering. Binære Søketre

INF oktober Stein Krogdahl. Kap 23.5: Trær og strategier for spill med to spillere

Uretta grafar (1) Mengde nodar Mengde kantar som er eit uordna par av nodar

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

INF2810: Funksjonell Programmering. Trær og mengder

INF2810: Funksjonell Programmering. Lokale variabler. Og trær.

UNIVERSITETET I OSLO

ALGORITMER OG DATASTRUKTURER

Grunnleggende Grafalgoritmer III

Kontinuasjonseksamen i fag SIF8010 Algoritmer og Datastrukturer Torsdag 9. August 2001, kl

Algoritmer og datastrukturer Løsningsforslag

Flerveis søketrær og B-trær

INF110 Algoritmer og datastrukturer TRÆR. Vi skal i denne forelesningen se litt på ulike typer trær:

ALGORITMER OG DATASTRUKTURER

Algoritmer og datastrukturer Kapittel 9 - Delkapittel 9.2

Prioritetskøer. Prioritetskøer. Binære heaper (vanligst) Prioritetskøer

INF Algoritmer og datastrukturer

INF2220: Forelesning 1

INF2810: Funksjonell Programmering. Trær og mengder

Løsnings forslag i java In115, Våren 1996

INF2220: Forelesning 1

EKSAMEN med løsningsforslag

IN Algoritmer og datastrukturer

INF Algoritmer og datastrukturer

INF Algoritmer og datastrukturer

Anvendelser av grafer

Heapsort. Lars Vidar Magnusson Kapittel 6 Heaps Heapsort Prioritetskøer

Forelesning 33. Repetisjon. Dag Normann mai Innledning. Kapittel 11

Hva legger vi i spillteori?

Transkript:

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 Hvis en spiller får summen til å bli lik 8, vinner han/hun spillet Hvis en spiller får summen til å bli over 8, taper han/hun spillet

Åtterspillet: Eksempel F: Spiller 1 (First) S: Spiller 2 (Second) F Sum S Sum 1 1 3 4 1 5 2 7 1 8 Spiller 1 vinner

Åtterspillet kan tegnes som et tre Nodene inneholder summen så langt i spillet Forbindelser mellom nodene er mulige trekk

Et spilltre for hele åtterspillet

Trær og hierarkiske data Trestrukturer er velegnet for å representere data som er ordnet innbyrdes i et nivå- eller verdi-system Dataene i treet ligger i lag eller nivåer, som tilsvarer en hierarkisk ordning Nodene kan bare ha én direkte forgjenger på nivået over i treet, men flere direkte etterfølgere på nivået under På øverste nivå er det bare én node, roten i treet, som er den eneste som ikke har noen direkte forgjenger Maksimalt antall direkte etterfølgere som hver node kan ha, bestemmer typen av tre

Eksempel: Katalogtrær i filsystemer

Eksempel: Turneringstrær

Eksempel: Familietre

Eksempel: Foreldretre (binært) Cashmere Cat Mette Jan Solveig Arnt Randi Arnold Anna Peder Maren Aksel Margit Arne Borghild Olaf

Trær av orden n Trær klassifiseres etter hvor mange etterfølgere en node maksimalt kan ha Et tre der nodene har maksimalt n etterfølgere kalles for et tre av orden n, eller et n-ært tre Trær av orden 2, binære trær, er vanlig å bruke i algoritmer for effektiv datahåndtering Store databasesystemer bruker ofte trær av svært høy orden Trær som ikke har et begrenset antall etterfølgere til hver node kalles generelle trær

Rekursiv definisjon av tre av orden n Et tre av orden n er en datastruktur som enten er: Tom (inneholder 0 noder), eller Består av en rotnode med maksimalt n etterfølgere som alle er trær av orden n

Betegnelser på nodene i et tre Rot (root): Den ene noden på øverste nivå som ikke har noen forgjenger inngangen til hele treet Barn (child/children): Noder som er direkte etterfølgere til en node på nivået over, er barn av denne noden Forelder (parent): Noden på nivået over, som er direkte forgjenger til en node (barnet), er forelder til denne noden Søsken (siblings) Noder som har samme forelder er søsken

Betegnelser på nodene i et tre (forts.) Blad (leaf /leaves): Node som ikke har noen barn, terminalnoder Indre node (internal node): Alle noder, unntatt rotnoden, som har minst ett barn, er indre noder Kant (edge): Et nodepar som angir en forbindelse mellom to noder, fra forelder til barn

Rot: A Blader: E, I, J, K, G, H, D Indre noder: B, F, C Barn/forelder/søsken: A B, C, D B E, F F I, J, K C G, H Alle kanter i treet: (A,B), (A,C), (A,D), (B,E), (B,F), (C,G), (C,H), (F,I), (F,J), (F,K)

Vei, nivå, lengde og høyde Trær aksesseres fra roten og nedover i treet, ved hele tiden å gå fra foreldre til barn Rotnoden er på nivå 0, barna til roten på nivå 1, etc. En vei i treet er listen av noder som vi går gjennom for å komme fra en bestemt node til annen node lenger ned i treet, nodene på veien er etterfølgere Lengden av en vei er antall kanter på veien Høyden av et tre er lengden av den lengste veien som finnes i hele treet fra roten til et blad

Nivå 0 Nivå 1 Nivå 2 Nivå 3 Vei: A, D, lengde 1 Lengste vei: A, B, F, I, lengde 3 Høyde: 3