Presentation laddar. Vänta.

Presentation laddar. Vänta.

Träd och tillämpningar Data Structures & Problem Solving using Java -- Kapitel 19, 12.

Liknande presentationer


En presentation över ämnet: "Träd och tillämpningar Data Structures & Problem Solving using Java -- Kapitel 19, 12."— Presentationens avskrift:

1 Träd och tillämpningar Data Structures & Problem Solving using Java -- Kapitel 19, 12

2 Implementation- noden class BinaryNode{ private Object element; private BinaryNode left; private BinaryNode right; public BinaryNode( Object theElement, BinaryNode lt, BinaryNode rt){ element=theElement; left=lt; right=rt; } } element left right

3 BinaryTree klassen class BinaryTree{ } private BinaryNod root; public BinaryTree( Object item){ root=new BinaryNode(item,null,null); } public BinaryTree(){ root=null; }

4 Tillämpning- Binära Sökträd (Vad är en sökträd?) 7 2 3 9 11 51 Ett binärt träd där, för vilken som hälst nod i trädet alla noder som innehåller ett värde mindre än sin egen värde befinner sig i det vänsta delträdet och alla noder som innehåller ett värde som är större än sin värde befinner sig i det högra delträdet.

5 Är det ett sökträd? 7 2 3 9 11 51 8

6 Operationer Find(), findMin(), findMax() Insert() Remove()

7 Insert () 7 2 3 9 11 51 6

8 Insert () 7 2 3 9 11 51 6

9 Insert () 7 2 3 9 11 51 6

10 Insert () 7 2 3 9 11 51 6

11 Binära Sökträd – metoden find()-mycket kort söktid

12 Binära Sökträd – metoden findMax()-mycket kort söktid

13 Binära Sökträd – metoden findMin()-mycket kort söktid

14 Farliga specialfall!

15 Remove () 7 2 3 9 11 51 a) Om noden är löv

16 Remove () 7 2 3 9 11 51 b) Om noden har ett barn

17 Remove () 7 2 3 9 11 51 4 c) Om noden har två barn 3 Ersätt värdet i noden med den minsta värdet i i det högra delträdet och sedan ta bort den noden

18 Datakomprimering - Huffman Hej, mitt namn är Nicolina och jag försöker få mina studenter att se tjusningen i träd och komprimeringsalgoritmer! 01001000 01100101 01101010 00101100 00100000 01101101 01101001 01110100 01110100 00100000 01101110 01100001 01101101 01101111 00100000 10000100...

19 01001000 01100101 01101010 00101100 00100000 01101101 01101001 01110100 01110100 00100000 01101110 01100001 01101101 01101111 00100000 10000100... Datakomprimering - Huffman 101 1110 010 01 111 011 01 11 100 1101 101 10 011 001 1100 10... 101 1110 010 01111 01101 11100 1101101 10011001110010...

20 Huffman träd, men hur? a d bc

21 Datakomprimering - Huffman 01001101 01101101 00110101 10101001 01010111 25 ggr 31 ggr 5 ggr 19 ggr 14 ggr I II III IV V III IIIIV V 10 11 10 000 001 01 I II III IV V = = = = =


Ladda ner ppt "Träd och tillämpningar Data Structures & Problem Solving using Java -- Kapitel 19, 12."

Liknande presentationer


Google-annonser