asd pertemuan 6
DESCRIPTION
download disini untuk it ETRANSCRIPT
![Page 1: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/1.jpg)
ALGORITMA DAN STRUKTUR DATA
Tree Introduction - QuizPertemuan 6 – 26/10/2015
Universitas Muhammadiyah Malang (UMM)Wildan Suharso,S.Kom,M.Kom
www.wildansuharso.com
![Page 2: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/2.jpg)
Yang Sudah Diperoleh
• Pengantar Algoritma dan Struktur Data• Review Java (Tipe Data, Iterasi, Rekursi, Method, Class, etc)• Algoritma (natural language, flow chart, pseudocode, analisis
kompleksitas, penulisan program)• Contoh dan Penerapan Struktur Data• Searching dan sorting pada array (bubleshort, insertion sort,
selection)• Array dan Linked List• ArrayList() dan LinkList()• Tugas Algoritma, Struktur Data, ArrayList(), Linked List, Stack,
Queue
![Page 3: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/3.jpg)
Klasifikasi Struktur Data
Struktur Data
Tree
Stack
Non Linier
Sederhana
Linier
Linked List
Graph
Queue
![Page 4: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/4.jpg)
Struktur Data Linier
• Linier dapat dikatakan sebagai logis memiliki start dan stop
• Memiliki link pada elemen selanjutnya (next)• Memiliki link pada elemen sebelumnya
(previous)• Dapat kita ketahui pula bahwa kita dapat
mudah mengetahui organisasi dan penyimpanan
• Contoh Array, Linked Lists, Stack, Queue
![Page 5: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/5.jpg)
Tree
• Tree bukan struktur data terbaik• Tetapi sangat cocok untuk tujuan tertentu• Misalkan organisasi dalam perusahaan• Bukanlah tipe data linier, sehingga tidak
nampak sequensial• Meski dalam pemrograman/aplikasi dapat
menggunakan linked list atau array
![Page 6: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/6.jpg)
Klasifikasi Tree
• Tree Umum– Child 0,1,2,...., N
• Binary Tree– Selalu child 0, 1, atau 2
![Page 7: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/7.jpg)
Bagian Tree
• Root• Parrent• Child• Sibling• Leaf
![Page 8: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/8.jpg)
Contoh Tree
![Page 9: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/9.jpg)
Contoh Stuktur Data Tree
Struct node {int data;Node* left;Node* right;
}
![Page 10: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/10.jpg)
Aplikasi Tree
• Penyimpanan Manual– File System
• Organisasi Data– Insert, Delete, Search – Binary Search Tree
• Pengecekan cepat, dinamis– Kamus
• Network Routing Algorithm
![Page 11: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/11.jpg)
Pembacaan Tree
![Page 12: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/12.jpg)
• Simpul dalam tempat menyimpan operator• Simpul luar tempat menyimpan operand• Operand kiri menjadi anak kiri dan Operand
kanan menjadi anak kanan operatornya• Evaluasi ekspresi dilakukan mulai operator
yang mempunyai derajat kedalaman tertinggi hingga terendah
![Page 13: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/13.jpg)
Contoh
![Page 14: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/14.jpg)
Klasifikasi Tree
• Tree Umum• Binary Tree
![Page 15: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/15.jpg)
Tree Secara Umum
• Tree memiliki child dan parrent• Jumlah Child dari 0,1,2,...,N• Aturan kanan dan kiri tidak diperhatikan• Aturan sempurna, hampir sempurna, dan
tidak sempurna tidak diperhatikan
![Page 16: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/16.jpg)
Klasifikasi Tree
Struktur Data
Tree
Stack
Non Linier
Sederhana
Linier
Linked List
Graph
Queue
![Page 17: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/17.jpg)
Binary Tree
• Merupakan struktur data khusus• Digunakan untuk pencarian cepat, insert,
delete• Pada binary tree memungkinkan pencarian
tidak sequensial• T1<R<T2
![Page 18: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/18.jpg)
Struktur Data Binary Tree
• Struktur data binary tree dapat menggunakan tree
• Seperti tree sama dengan two way list
![Page 19: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/19.jpg)
Fungsi BST
• Pencarian data • Menghilangkan duplikasi data • Sorting Data
![Page 20: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/20.jpg)
Contoh BST
• Misalkan, coba insertkan satu persatu deret di bawah ini– 60, 80, 30, 50, 65, 20, 10, 90, 25
![Page 21: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/21.jpg)
Jawab
• Data pertama sebagai root• Kemudian ikuti aturan binary search tree• T1 < R < T2
![Page 22: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/22.jpg)
Jawab
![Page 23: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/23.jpg)
Soal
• Buatlah pohon biner / tree– P * Q / R – S * T + U / V – A * (B – C) / (D + E) * F * G – V * (W / (X – (Y + Z))) – (2 * 3 / 2 – 7) * (9 + 5 / 3)
• Buat BST dari data di bawah ini– 30, 80, 20, 10, 100– 100, 40, 30, 20– 100, 10, 80, 20
![Page 24: ASD pertemuan 6](https://reader036.vdocuments.pub/reader036/viewer/2022082215/563db796550346aa9a8c7488/html5/thumbnails/24.jpg)
Next Kompleksitas
• Array >>>> O(n)• Linked List >>>> O(n)• Stack >>>> O(n)• Queue >>>> O(n)• BST >>>> O(log n)