Politeknik Elektronika Negeri Surabaya

Ukuran: px
Mulai penontonan dengan halaman:

Download "Politeknik Elektronika Negeri Surabaya"

Transkripsi

1 PRAKTIKUM BINARY SEARCH TREE A. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami dan mengimplementasaikan Konsep Binary Search Tree 2. Memahami keunggulan dari algoritma Binary Search Tree 3. Mampu mengimplementasikan algoritma Binary Search Tree B. DASAR TEORI Binary search tree adalah salah satu bentuk dari pohon.di mana masing-masing pohon tersebut hanya memiliki dua buah upapohon, yakni upapohon kiri dan upapohon kanan.ciri khas yang melekat pada binary search tree ini yang bisa juga dibilang sebagai keunggulan dari binary search tree adalah peletakan isi dari nodenya yang terurut berdasarkan besarnya dari isinya tersebut.isinya bisa saja berupa integer, karakter, atau apapun sesuai dengan spesifikasi binary search tree yang ada. Operasi dasar dari binary search tree(bst) ini sendiri sangatlah sederhana, yakni hanya fungsi perbandingan dan fungsi rekursif. Di mana anak pohon sebelah kiri node adalah anak pohon yang lebih kecil dari node, sedangkan anak pohon sebelah kanan node memiliki isi yang lebih besar daripada isi node. Biasanya penyimpanan data di dalam binary search tree ini bisa juga berupa record di mana pengurutannya hanya tinggal melihat key dari record tersebut, missal nomor absen, NIM, tanggal, dll. Keunggulan Binary Search a. Search Method Metode search adalah penentu paling dalam program atau bisa dibilang nyawa dari programdatabase. Kenapa search sangat penting untuk efisien.?bayangkan saja apabila ada miliaran data yang ada di dalam database pada sebuah komputer server dan harus diolah dan selalu harus diupdate setiap hari ataupun diakses pengguna untuk dicari isi data yang diinginkanya. Lalu, yang kita gunakan adalah struktur data yang tidak efisien, di mana suatu saat computer server akan mengalami minimal hang atau yang paling parah adalah server down sehingga tidak bisa diakses dan akhirnya justru membuang waktu bahkan lebih 198

2 parahnya bisa menyebabkan data dalam harddisk server menghilang. Tentunya kita sangat menghindari hal semacam itu terjadi bukan. Metode Search sendiri ada banyak, seperti yang sudah sempat disinggung sedikit pada pendahuluan. Bahwa search macamnya ada linear search, binary search, binary search tree, dll. Di sini hanya akan dibahas 3 contoh tersebut. Linear search merupakan tipe search yang paling mendasar dalam dunia search. Pada dasarn linear search ini sangat sederhana.yakni memulai pencarian dari elemen pertama kemudian bergeser terus ke elemen berikutnya hingga menemukan isi elemen yang dicari. Apabila elemen yang dicari tidak ada, maka linear search akan terus melakukan traversal hingga elemen terakhir. Mari kita bayangkan apabila terdapat banyak sekali data yang harus ditraversal dan data yang dicar itidak ada di dalam database(worst case possibility). Efektivitas dari linear search ini adalah dengan O(n) worst case tergantung dari jumlah elemen yang ada di dalam database tersebut. Metode search yang berikutnya yakni binary search, bedanya binary search dari linear search adalah dengan pembagian jumlah elemen menjadi dua bagian. Sehingga pencarian bisa lebih efektif dengan cara membagi pencarian ke dua arah. Worst case dari binary search ini adalah O(log n) sehingga cara ini bisa dibilang cukup efisien. Metode search yang terakhir adalah binary search tree (sebenarnya bukan merupakan metode search). binary search tree memiliki kompleksitas algoritma O(log n) yang tidak ada bedanya dengan metode binary search. Tetapi seharusnya metode search pada binary search tree bisa lebih singkat, karena jalur yang dipilih sudah tergolong spesifik, sehingga tidak perlu memeriksa semua elemen untuk mencari elemen tertentu. b. Struktur Data Struktur data merupakan keunggulan dari binary search tree jika kita bandingkan dengan array pada umunya.mengapa hal tersebut bisa dibilang sebagai keunggulan? Karne struktur data dari binary search tree adalah linked list dengan elemennya terurut. Dengan demikian apabila struktur datanya sudah terurut maka pengaksesannya pun jauh lebih mudah.hal yang diakibatkan dari struktur data tersebut adalah kita tidak perlu melakukan sorting terhadap data yang sudah ada. Berbeda dengan struktur data yang lain, seperti struktur data array, linked list biasa membutuhkan sebuah fungsi sort untuk mengurutkan datanya. Keunggulan lain yang disebabkan struktur data dari pohon ini adalah 199

3 kemudahan insertion process. Pada proses pemasukan data padabinary search tree, sangatlah mudah, sama sekali tidak ada pergeseran data. Proses yang terjadi hanyalah pencarian lokasi yang tepat untuk data yang dimasukkan tersebut, kemudian dikaitkan ke data di atasnya sehingga dia menjadi anggota binary search tree yang baru Gambar 1.Binary Tree Kendati demikian, struktur data pada binary search tree menyebabkan proses penghapusan data pada binary search treetergolong cukup rumit. Mengapa rumit? Karena harus ada traversal data untuk mencari node tertentu untuk menggantikan posisi dari node yang telah dihapus(informasi akan diperjelas di dalam Gambar). Selain itu, kelemahan pemasukan data pada binary search tree jika dibandingkan dengan Tabel Eksplisit adalah table eksplisit tidak memerlukan pengulangan untuk penambahan elemen baru, sedangkan binary search tree membutuhkan proses sekuensial untuk menambahkan satu elemen baru. Namun hal tersebut dapat ditutupi dengan sorted element dari binary search tree. Gambar 2.Menghapus Node di Binary Tree 200

4 C. TUGAS PENDAHULUAN Buatlah resume 1 halaman mengenai Binary Search Tree dan berikan penjelasannya.! D. PERCOBAAN Node.java 1. class Node { int idata; // data yang digunakan sebagai nilai kunci. 4. Node leftchild; // Simpul rujukan ke anak sebelah kiri. 5. Node rightchild; // Simpul rujukan ke anak sebelah kanan. 6. } BinaryTree.java 1. class BinaryTree { private Node root; // Membentuk akar (root) BinaryTree public Object find(int key) { 6. Node current = root; // Mulai dari akar (root) 7. while (current.idata!= key) // Selama tidak sesuai 8. { 9. if (key < current.idata) // Pergi ke cabang kiri? 10. { 11. current = current.leftchild; 12. } else { 13. current = current.rightchild; // Atau pergi ke cabang kanan. 14. } 15. if (current == null) // Jika tidak memiliki anak. 16. { 17. return null; 18. } 19. } 20. return current; // Data yang dicari ditemukan. 21. } public void insert(int id) { 24. { 25. Node newnode = new Node(); // Membuat Node yang akan disisipkan. 26. newnode.idata = id; // Menyisipkan data. 27. if (root == null) // Jika tidak ada Node di akar (root). 28. { 29. root = newnode; 30. } else { 31. Node current = root; // Mulai dari akar (root). 32. Node parent; 33. while (true) // hadir secara internal. 34. { 35. parent = current; 36. if (id < current.idata) // Pergi ke kiri. 37. { 201

5 38. current = current.leftchild; 39. if (current == null) // Akhir cabang kiri. 40. { // Sisipkan di kiri. 41. parent.leftchild = newnode; 42. return; 43. } 44. } // Akhir perjalanan ke kiri. 45. else // Atau pergi ke kanan. 46. { 47. current = current.rightchild; 48. if (current == null) // Akhir perjalanan cabang kanan. 49. { // Sisipkan di kanan. 50. parent.rightchild = newnode; 51. return; 52. } 53. } // Akhir perjalanan ke kanan. 54. } // Akhir while 55. } // Akhir bukan akar (root). 56. } // Akhir insert() 57. } public boolean delete(int id) { // (Asumsi pohon tidak kosong) 60. Node current = root; 61. Node parent = root; 62. boolean isleftchild = true; 63. while (current.idata!= id) // Mencari Node yang akan dihapus. 64. { 65. parent = current; 66. if (id < current.idata) // Pergi ke kiri? 67. { 68. isleftchild = true; 69. current = current.leftchild; 70. } else // Atau pergi ke kanan? 71. { 72. isleftchild = false; 73. current = current.rightchild; 74. } 75. if (current == null) // Akhir baris 76. { 77. return false; // Node yang dicari tidak ditemukan. 78. } 79. } // end while 80. // Node yang akan dihapus ditemukan. 81. // Jika Node tidak memiliki anak, hapus! 82. if (current.leftchild == null 83. && current.rightchild == null) { 84. if (current == root) // Jika Node yang dihapus merupakan akar (Node). 85. { 86. root = null; // Pohon biner menjadi kosong. 87. } else if (isleftchild) // Jika Node yang dihapus adalah anak sebelah kiri. 88. { 89. parent.leftchild = null; // Pemutusan koneksi. 90. } else // Jika Node yang akan dihapus adalah anak sebelah kanan. 91. { 202

6 92. parent.rightchild = null; 93. } 94. } // Jika tidak ada anak kanan, ganti dengan subpohon kiri. 95. else if (current.rightchild == null) { 96. if (current == root) { 97. root = current.leftchild; 98. } else if (isleftchild) // Anak sebelah kiri induk. 99. { 100. parent.leftchild = current.leftchild; 101. } else // Anak sebelah kanan induk { 103. parent.rightchild = current.leftchild; 104. } 105. } // Jika tak ada anak kiri, gantikan dengan subpohon sebelah kanan else if (current.leftchild == null) { 107. if (current == root) { 108. root = current.rightchild; 109. } else if (isleftchild) // Anak sebelah kiri induk { 111. parent.leftchild = current.rightchild; 112. } else // Anak sebelah kanan induk { 114. parent.rightchild = current.rightchild; 115. } 116. } else // Dua anak, gantikan dengan successor inorder { 118. // Mendapatkan successor Node untuk dihapus (current) 119. Node successor = getsuccessor(current); 120. // Menghubungkan induk Node saat ini ke successor if (current == root) { 122. root = successor; 123. } else if (isleftchild) { 124. parent.leftchild = successor; 125. } else { 126. parent.rightchild = successor; 127. } 128. // connect successor to current's left child 129. successor.leftchild = current.leftchild; 130. } // end else two children 131. // (successor tidak mempunyai anak sebwlah kiri) 132. return true; 133. } // end delete() 134. // Mengembalikan Node yang memiliki nilai terbesar berikuntnya setelah delnode, 135. // pergi ke anak kanan, kemudian turunan kiri anak sebalah kanan private Node getsuccessor(node delnode) { 137. Node successorparent = delnode; 138. Node successor = delnode; 139. Node current = delnode.rightchild; // Pergi ke anak sebelah kanan while (current!= null) // Hingga habis { // Anak kiri successorparent = successor; 143. successor = current; 144. current = current.leftchild; // Pergi ke anak sebelah kiri. 203

7 145. } 146. // Jika successor bukan anak seblah kanan if (successor!= delnode.rightchild) { // Buat hubungan successorparent.leftchild = successor.rightchild; 149. successor.rightchild = delnode.rightchild; 150. } 151. return successor; 152. } 153. //Mencari simpul (Node) yang memiliki nilai terkecil public Node minimum() { 155. Node current, last = null; 156. // Mulai dari akar (root) current = root; 158. // Hingga dasar pohon biner while (current!= null) { 160. // Mencatat Node 161. last = current; 162. // Pergi ke anak kiri current = current.leftchild; 164. } 165. return last; 166. } 167. } // end class BinaryTree TestBinaryTree.java 1. import java.io.bufferedreader; 2. import java.io.ioexception; 3. import java.io.inputstreamreader; public class TestBinaryTree { private static int cari; 8. private static int cacahdata; public static void main(string[] args) { 11. BinaryTree bt = new BinaryTree(); // Membuat objek bt bertipe BinaryTree. 12. System.out.print("Berapa data yang akan dimasukkan ke BinaryTree? "); 13. cacahdata = inputdata(); 14. for (int i = 0; i < cacahdata; i++) { 15. System.out.print("Data ke-" + (i + 1) + " = "); 16. bt.insert(inputdata()); 17. } 18. System.out.print("Data yang Anda cari? "); 19. cari = inputdata(); 20. Node found = (Node) bt.find(cari); // find node with key if (found!= null) { 22. System.out.println("Node dengan key " + cari + " ditemukan."); 23. } else { 24. System.out.println("Node key " + cari + " tidak dapat ditemukan."); 25. } 26. } private static int inputdata() { 29. BufferedReader bfr = new BufferedReader(new 204

8 InputStreamReader(System.in)); 30. String angkainput = null; 31. try { 32. angkainput = bfr.readline(); 33. } catch (IOException e) { 34. e.printstacktrace(); 35. } 36. int Data = Integer.valueOf(angkaInput).intValue(); 37. return Data; 38. } 39. } E. LATIHAN Latihan 1 : buat class BinerySearchTree, kemudian analisa dan gambarkan pohonya sesuai code berikut : 1. import java.util.*; 2. class Node{ 3. int data; 4. Node left; 5. Node right; 6. Node(int x){ 7. this.data = x; 8. } 9. } 10. public class BinarySearchTree{ 11. private Node root; 12. /** 13. * Mengecek apakah tree masih kosong 14. **/ 15. private boolean isempty(){ 16. return (root == null); 17. } 18. /** 19. * Memasukkan suatu nilai ke dalam tree. 20. * Jika nilai tersebut lebih kecil dari nilai node, maka bergerak ke kiri terus 21. * hingga menjadi child, begitu juga sebaliknya. 22. **/ 23. public void insert(int input){ 24. Node temp = new Node(input); 25. if (isempty()) 26. root = temp; 27. else { 28. Node cursor = root, 29. parent = null; 30. while (cursor!= null){ 31. parent = cursor; 32. if (input < cursor.data) 33. cursor = cursor.left; 34. else 35. cursor = cursor.right; 36. } 205

9 37. /** 38. * Menambahkan Node baru pada kiri/kanan Node parent bergantung 39. * pada nilai input dan nilai yang disimpan Node parent 40. **/ 41. if (input < parent.data){ 42. parent.left = temp; 43. return; 44. } 45. else { 46. parent.right = temp; 47. return; 48. } 49. } 50. } 51. /* Mencari suatu nilai dalam tree berdasarkan prinsip : 52. * Selama belum menemukan nilai yang sama, 53. * Jika nilai yang dicari lebih kecil dari nilai yang disimpan dalam Node 54. * maka bergerak ke left Child begitu juga sebaliknya. 55. **/ public boolean delete(int key){ 58. Node cursor = root, 59. parent = null; 60. boolean found = false, 61. isleftchild = true; //menandai apakah Node yang dihapus merupakan left child 62. if (!isempty()){ 63. while (cursor!= null){ 64. parent = cursor; 65. if (key == cursor.data){ 66. found = true; 67. break; 68. } 69. else if (key < cursor.data){ 70. isleftchild = true; 71. cursor = cursor.left; 72. } 73. else { 74. isleftchild = false; 75. cursor = cursor.right; 76. } 77. } 78. if (!found) 79. return false; 80. else { 81. /** 82. * Untuk menghapus leaf (tidak punya child) 83. **/ 84. if (cursor.left == null && cursor.right == null){ 85. if (cursor == root) 86. root = null; 87. else if (isleftchild) 88. parent.left = null; 89. else 90. parent.right = null; 206

10 91. } /* Jika node yang akan dihapus hanya memiliki salah satu subtree 94. * maka tinggal memindahkan subtree menggantikan node yang dihapus 95. **/ 96. else if (cursor.left == null){ 97. if (cursor == root) 98. root = cursor.right; 99. else if (isleftchild) 100. parent.left = cursor.right; 101. else 102. parent.right = cursor.right; 103. } 104. else if (cursor.right == null){ 105. if (cursor == root) 106. root = cursor.left; 107. else if (isleftchild) 108. parent.left = cursor.left; 109. else 110. parent.right = cursor.left; 111. } 112. /** 113. * Jika node yang akan dihapus memiliki 2 child, maka cari successornya 114. * dengan fungsi getsuccessor kemudian hubungkan subtree bagian kanan 115. * dari node yang dihapus dengan successor 116. **/ 117. else { 118. Node successor = getsuccessor(cursor); 119. if (cursor == root) 120. root = successor; 121. else if (isleftchild) 122. parent.left = successor; 123. else 124. parent.right = successor; 125. //menyambung successor dengan cursor.right 126. successor.right = cursor.right; 127. } 128. } 129. } 130. return true; 131. } private Node getsuccessor(node localnode){ 134. Node parent = null, 135. successor = localnode, 136. cursor = localnode.left; 137. while (cursor!= null){ 138. parent = successor; 139. successor = cursor; 140. cursor = cursor.right; 141. } 142. if (successor!= localnode.left){ 143. parent.right = successor.left; 207

11 144. successor.left = localnode.left; 145. } 146. return successor; 147. } 148. /** 149. * Method traverse untuk mengelilingi Node-Node dalam tree 150. **/ 151. public void traverse(int tipe){ 152. switch (tipe){ 153. case 1: 154. System.out.print("\nPreorder traversal:\n"); 155. preorder(root); 156. break; 157. case 2: 158. System.out.print("\nInorder traversal:\n"); 159. inorder(root); 160. break; 161. case 3: 162. System.out.print("\nPostorder traversal:\n"); 163. postorder(root); 164. break; 165. } 166. System.out.println('\n'); 167. } 168. private void preorder(node localroot){ 169. if (localroot == null) return; 170. System.out.print(localRoot.data+" "); 171. preorder(localroot.left); 172. preorder(localroot.right); 173. } 174. private void inorder(node localroot){ 175. if (localroot == null) return; 176. inorder(localroot.left); 177. System.out.print(localRoot.data+" "); 178. inorder(localroot.right); 179. } 180. private void postorder(node localroot){ 181. if (localroot == null) return; 182. postorder(localroot.left); 183. postorder(localroot.right); 184. System.out.print(localRoot.data+" "); 185. } public static void main(string[] args) 188. { 189. BinarySearchTree a = new BinarySearchTree(); 190. //penambahan node pada binary tree 191. a.insert(5); 192. a.insert(4); 193. a.insert(6); 194. a.insert(1); 195. a.insert(4); 196. a.insert(9); 197. //penelusuran node pada binary tree 198. a.traverse(1); //pre-order 199. a.traverse(2); //in-order 208

12 200. a.traverse(3); //post-order 201. } 202. } Latihan 2 :Dengan menggunakan class BinarySearchTree lakukan pemanggilan method insert() dengan mengirimkan input berturut-turut sesuai dengan deret berikut : {10, 5,20,2,6,19,25,21}, root adalah 10. Gambarkan hasil akhir binary search tree tersebut! F. LAPORAN RESMI Kerjakan hasil percobaan(d) dan latihan(e) di atas dan tambahkan analisa. 209

Struktur Data Tree/Pohon dalam Bahasa Java

Struktur Data Tree/Pohon dalam Bahasa Java Struktur Data Tree/Pohon dalam Bahasa Java Jeffrey Hermanto Halimsetiawan shadowz_029@yahoo.com.sg tutorialpemrograman.wordpress.com 22 Maret 2009 tutorialpemrograman.wordpress.com - 2009 1 Tree merupakan

Lebih terperinci

Binary Tree kosong Gambar 1. Binary Tree dalam kondisi kosong

Binary Tree kosong Gambar 1. Binary Tree dalam kondisi kosong PRAKTIKUM 25-26 BINARY TREEDAN TRAVERSAL BINARY TREE A. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami konsep dari BinaryTree dantraversalbinary Tree 2. Memahami proses traversal pada Binary Tree 3. Memahami

Lebih terperinci

A. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami Konsep Binary Search Tree 2. Mengimplementasaikan Binary Search Tree

A. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami Konsep Binary Search Tree 2. Mengimplementasaikan Binary Search Tree PRAKTIKUM 27 BINARY SEARCH TREE A. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami Konsep Binary Search Tree 2. Mengimplementasaikan Binary Search Tree B. DASAR TEORI Binary search tree adalah salah satu

Lebih terperinci

Politeknik Elektronika Negeri Surabaya

Politeknik Elektronika Negeri Surabaya Politeknik Elektronika Negeri Surabaya PRAKTIKUM 28 BINARY SEARCH TREE 2 A. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami konsep menghapus node pada Binary Search Tree. Node yang dihapus adalah node

Lebih terperinci

Penerapan Teknik Binary Search Tree Sebagai Alternatif Penyimpanan Data

Penerapan Teknik Binary Search Tree Sebagai Alternatif Penyimpanan Data Penerapan Teknik Binary Search Tree Sebagai Alternatif Penyimpanan Data Reynald Alexander G 13509006 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

Silsilah keluarga Hasil pertandingan yang berbentuk turnamen Struktur organisasi dari sebuah perusahaan. B.1 Pohon Biner (Binary Tree)

Silsilah keluarga Hasil pertandingan yang berbentuk turnamen Struktur organisasi dari sebuah perusahaan. B.1 Pohon Biner (Binary Tree) PRAKTIKUM 25 BINARY TREE A. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami konsep dari BinaryTree 2. Memahami cara membangun Binary Tree secara manual 3. Memahami konsep dan implementasi dari menghitung

Lebih terperinci

Politeknik Elektronika Negeri Surabaya

Politeknik Elektronika Negeri Surabaya PRAKTIKUM 25 TRAVERSAL BINARY TREE A. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami konsep dari pembacaan Binary Tree dengan traversal Inorder, Preorder dan PostOrder 2. Mengimplementasikan pembacaan

Lebih terperinci

Praktikum Algoritma dan Setruktur Data

Praktikum Algoritma dan Setruktur Data Praktikum Algoritma dan Setruktur Data Binary Tree Oleh: Sukarjo (115090613111001) Asisten: Dwi Saputro Ilham Yuliantoro PROGRAM TEKNOLOGI INFORMATIKA DAN ILMU KOMPUTER UNIVERSITAS BRAWIJAYA MALANG - 2012

Lebih terperinci

Algoritma dan Struktur Data. Binary Tree & Binary Search Tree (BST)

Algoritma dan Struktur Data. Binary Tree & Binary Search Tree (BST) Algoritma dan Struktur Data Binary Tree & Binary Search Tree (BST) Teknik Informatika Universitas Muhammadiyah Malang 2016 Outline Tree Binary tree Istilah pada tree Operasi dasar binary tree BST Definisi

Lebih terperinci

Everybody in this country should learn how to program a computer because it teaches you how to think. Steve Jobs

Everybody in this country should learn how to program a computer because it teaches you how to think. Steve Jobs Everybody in this country should learn how to program a computer because it teaches you how to think. Steve Jobs Pengenalan Heap Heap adalah struktur data dengan konsep Binary Tree. Heap dibagi menjadi

Lebih terperinci

Algoritma dan Struktur Data. Linear & Binary Search Tree

Algoritma dan Struktur Data. Linear & Binary Search Tree Algoritma dan Struktur Data Linear & Binary Search Tree Linear Search (1) (2) (3) (4) (5) (6) struct { int key; int data; } table[100]; int n; int search(int key) { int i; i=0; while (i < n){ if(table[i].key==key)

Lebih terperinci

ANALISIS KECEPATAN STRUKTUR DATA LINKED LIST DAN TREE

ANALISIS KECEPATAN STRUKTUR DATA LINKED LIST DAN TREE ANALISIS KECEPAAN SRUKUR DAA LINKED LIS DAN REE Pradana Setialana Pendidikan eknik Informatika - Universitas Negeri ogyakarta pradana.setialana@gmail.com Abstract Binary search trees are better at displaying

Lebih terperinci

ANALISIS ALGORITMA BINARY SEARCH

ANALISIS ALGORITMA BINARY SEARCH ANALISIS ALGORITMA BINARY SEARCH Metode Binary search Binary search merupakan salah satu algoritma untuk melalukan pencarian pada array yang sudah terurut. Jika kita tidak mengetahui informasi bagaimana

Lebih terperinci

Struktur Data dan Algoritma

Struktur Data dan Algoritma Struktur Data dan Algoritma Binary Search Tree Suryana Setiawan, Ruli Manurung & Ade Azurat ( Denny (acknowledgments: Fasilkom UI SUR HMM AA Fasilkom UI - IKI20100/ IKI80110P 2009/2010 Ganjil Minggu 9

Lebih terperinci

Pohon dan Pohon Biner

Pohon dan Pohon Biner Pertemuan 14 Pohon dan Pohon Biner P r a j a n t o W a h y u A d i prajanto@dsn.dinus.ac.id +6285 641 73 00 22 Rencana Kegiatan Perkuliahan Semester # Pokok Bahasan 1 Pengenalan Struktur Data 2 ADT Stack

Lebih terperinci

IT234 Algoritma dan Struktur Data. Tree

IT234 Algoritma dan Struktur Data. Tree IT234 Algoritma dan Struktur Data Tree Fakultas Teknologi Informasi Universitas Kristen Satya Wacana @2008 Tree Kumpulan node yang saling terhubung satu sama lain dalam suatu kesatuan yang membentuk layakya

Lebih terperinci

KUM 6 IMPLEMENTASI BINARY TREE

KUM 6 IMPLEMENTASI BINARY TREE PRAKTIKUM KUM 6 IMPLEMENTASI BINARY TREE TUJUAN PEMBELAJARAN: 1. Mengimplementasikan struktur data Binary Tree menggunakan linked list. 2. Mampu mengimplementasikan beragam operasi pada struktur data binary

Lebih terperinci

13/12/2013. Binary Tree. Contoh Tree

13/12/2013. Binary Tree. Contoh Tree Binary Tree Contoh Tree 1 Struktur Tree Tree adalah struktur hirarki yang menempatkan elemen pada simpul pada cabang2nya yang dimulai dari root. Node (simpul) dalam tree dibagi dalam level dari tertinggi

Lebih terperinci

Ujian Tengah Semester Struktur Data dan Algoritma Fakultas Ilmu Komputer, Universitas Indonesia 9 November 2006

Ujian Tengah Semester Struktur Data dan Algoritma Fakultas Ilmu Komputer, Universitas Indonesia 9 November 2006 Ujian Tengah Semester Struktur Data dan Algoritma Fakultas Ilmu Komputer, Universitas Indonesia 9 November 2006 Bagian A (total 75 point) Petunjuk: Jawablah ke 25 pertanyaan berikut ini dan isikan jawaban

Lebih terperinci

MODUL PRAKTIKUM STRUKTUR DATA

MODUL PRAKTIKUM STRUKTUR DATA MODUL PRAKTIKUM STRUKTUR DATA TREE (POHON) Oleh : SUPRAPTO, S.Kom PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS PGRI RONGGOLAWE (UNIROW) TUBAN 2012/2013 MODUL V TREE (POHON) 5.1. TREE (POHON)

Lebih terperinci

Soal Pendahuluan Modul 3

Soal Pendahuluan Modul 3 1. Apa yang dimaksud dengan tree? PENGERTIAN TREE Kumpulan node yang saling terhubung satu sama lain dalam suatu kesatuan yang membentuk layakya struktur sebuah pohon. Struktur pohon adalah suatu cara

Lebih terperinci

ALGORITMA DAN STRUKTUR DATA

ALGORITMA DAN STRUKTUR DATA Modul ke: 10 Fitrianingsih Fakultas FASILKOM ALGORITMA DAN STRUKTUR DATA JENIS-JENIS TREE SKom., MMSI Program Studi Sistem Informasi JENIS-JENIS TREE Pohon (Tree) adalah graf terhubung yang tidak mengandung

Lebih terperinci

BAB XI Manipulasi Binary Tree

BAB XI Manipulasi Binary Tree www.hansmichael.com - Bab XI. Manipulasi Binary Tree BAB XI Manipulasi Binary Tree 11.1 Insert Node 11.2 Search Node 11.3 Delete Node 11.4 Copy Tree 11.5 Latihan Soal Binary tree seringkali diterapkan

Lebih terperinci

Implementasi Skema Pohon Biner yang Persistent dalam Pemrograman Fungsional

Implementasi Skema Pohon Biner yang Persistent dalam Pemrograman Fungsional Implementasi Skema Pohon Biner yang Persistent dalam Pemrograman Fungsional Azby Khilfi M. NIM : 13506018 Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung E-mail

Lebih terperinci

2. Mahasiswa dapat membuat dan menggunakan array dan linked list dalam suatu kasus.

2. Mahasiswa dapat membuat dan menggunakan array dan linked list dalam suatu kasus. 1 ARRAY & LINKED LIST MODUL 1 Standar kompetensi: 1. Mahasiswa mengetahui perbedaan array dan linked list. 2. Mahasiswa dapat membuat dan menggunakan array dan linked list dalam suatu kasus. 3. Mahasiswa

Lebih terperinci

TREE STRUCTURE (Struktur Pohon)

TREE STRUCTURE (Struktur Pohon) TREE STRUCTURE (Struktur Pohon) Dalam ilmu komputer, tree adalah sebuah struktur data yang secara bentuk menyerupai sebuah pohon, yang terdiri dari serangkaian node (simpul) yang saling berhubungan. Node-node

Lebih terperinci

Struktur Data & Algoritma

Struktur Data & Algoritma Struktur Data & Algoritma AVL Tree Suryana Setiawan, Ruli Manurung & Ade Azurat ( Denny (acknowledgments: Fasilkom UI SUR HMM AA Fasilkom UI - IKI20100/ IKI80110P Semester Ganjil 2009/2010 1 Tujuan Memahami

Lebih terperinci

Tree (Struktur Data) Nisa ul Hafidhoh, MT

Tree (Struktur Data) Nisa ul Hafidhoh, MT Tree (Struktur Data) Nisa ul Hafidhoh, MT Struktur Data Linier 1 5 8 9 2 ARRAY 0 1 2 3 n Head Tail QUEUE O U T 1 2 3 4 STACK 4 3 2 1 I N 10 8 14 LINKED LIST Struktur Tree Struktur Tree adalah struktur

Lebih terperinci

Struktur Data & Algoritma

Struktur Data & Algoritma Struktur Data & Algoritma ADT Tree Suryana Setiawan, Ruli Manurung & Ade Azurat ( Denny (acknowledgments: Fasilkom UI SUR HMM AA Fasilkom UI - IKI20100/IKI80110P 2009/2010 Ganjil Pekan 08 1 Tujuan Memahami

Lebih terperinci

Modul 4: Iteratif & Rekursif, Binary Tree

Modul 4: Iteratif & Rekursif, Binary Tree Modul 4: Iteratif & Rekursif, Binary Tree Tujuan Instruksi Khusus: Mahasiswa dapat memahami algoritma Iteratif dan Rekursif Mahasiswa dapat memahami struktur Binary Tree Teori Efektifitas pemilihan algoritma

Lebih terperinci

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II Pertemuan 13 Waktu : 135 menit Tujuan Pembelajaran : Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Tree. Substansi Materi : Tree Tabulasi Kegiatan Perkuliahan No Tahap Kegiatan Kegiatan Pengajar

Lebih terperinci

B C D E F G H I J K L M N O P Q R S T. Tinaliah, S.Kom POHON BINER

B C D E F G H I J K L M N O P Q R S T. Tinaliah, S.Kom POHON BINER A B C D E F G H I J K L M N O P Q R S T U V W X Y Z POHON BINER Tinaliah, S.Kom DEFINISI Pohon (dalam struktur data) struktur berisi sekumpulan elemen dimana salah satu elemen adalah akar (root) dan elemen-elemen

Lebih terperinci

POHON CARI BINER (Binary Search Tree)

POHON CARI BINER (Binary Search Tree) POHON CARI BINER (Binary Search Tree) 50 24 70 10 41 61 90 3 12 35 47 55 67 80 99 POHON CARI BINER (Binary Search Tree) Definisi : bila N adalah simpul dari pohon maka nilai semua simpul pada subpohon

Lebih terperinci

TREE ALGORITMA & STRUKTUR DATA. Materi ASD Fakultas Teknik Elektro & Komputer UKSW (www.uksw.edu) Download Dari :

TREE ALGORITMA & STRUKTUR DATA. Materi ASD Fakultas Teknik Elektro & Komputer UKSW (www.uksw.edu) Download Dari : TREE ALGORITMA & STRUKTUR DATA Materi ASD Fakultas Teknik Elektro & Komputer UKSW (www.uksw.edu) Download Dari : http://ambonmemanggil.blogspot.com 1 TREE ISTILAH-ISTILAH DASAR: tree : kumpulan elemen

Lebih terperinci

Tree. Perhatikan pula contoh tree di bawah ini : Level. Level 2. Level 3. Level 4. Level 5

Tree. Perhatikan pula contoh tree di bawah ini : Level. Level 2. Level 3. Level 4. Level 5 TR (POHON) Tree/pohon merupakan struktur data yang tidak linear/non linear yang digunakan terutama untuk merepresentasikan hubungan data yang bersifat hierarkis antara elemenelemennya. efinisi tree : Kumpulan

Lebih terperinci

Gambar 1. Langkah-langkah pengurutan metode Insertion Sort (1)

Gambar 1. Langkah-langkah pengurutan metode Insertion Sort (1) PRAKTIKUM 9-10 ALGORITMA PENGURUTAN (INSERTION DAN SELECTION) A. TUJUAN PEMBELAJARAN 1. Memahami mengenai algoritma pengurutan insertion sort dan selection sort. 2. Mampu mengimplementasikan algoritma

Lebih terperinci

Gambar 1. Single Linked List

Gambar 1. Single Linked List PRAKTIKUM 15-16 SINGLE LINKED LIST A. TUJUAN PEMBELAJARAN Mahasiswa diharapkan mampu : 1. Memahami konsep Linked List 2. Memahami dan mampu membedakan Linked list dengan array 3. Memahami operasi yang

Lebih terperinci

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 1)

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 1) MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 1) Deskripsi Singkat Struktur data array memang sederhana namun unsur-unsur pada array terkait rapat sehingga proses menggeser data di dalam

Lebih terperinci

BINARY SEARCH TREE. TUJUAN UMUM Mahasiswa memahami binary search Tree

BINARY SEARCH TREE. TUJUAN UMUM Mahasiswa memahami binary search Tree BINARY SEARCH TREE TUJUAN UMUM Mahasiswa memahami binary search Tree Tujuan Khusus Bentuk Khusus Binary Tree Rekursive pada Binary Tree Tree Traversal Operasi pada Binary Tree Implementasi Binary Tree

Lebih terperinci

Pertemuan 9 STRUKTUR POHON & KUNJUNGAN POHON BINER

Pertemuan 9 STRUKTUR POHON & KUNJUNGAN POHON BINER Pertemuan 9 STRUKTUR POHON & KUNJUNGAN POHON BINER DEFINISI POHON (TREE) Pohon (Tree) termasuk struktur non linear yang didefinisikan sebagai data yang terorganisir dari suatu item informasi cabang yang

Lebih terperinci

BAB IX TREE (POHON) ISTILAH DASAR

BAB IX TREE (POHON) ISTILAH DASAR Modul 9 Struktur Data (rie) - 1 IX TREE (POHON) Struktur pada tree (pohon) tidak linear seperti pada struktur linked list, stack, dan queue. Setiap node pada tree mempunyai tingkatan, yaitu orang tua (parent)

Lebih terperinci

Gambar 1. Single Linked List

Gambar 1. Single Linked List PRAKTIKUM 15 SINGLE LINKED LIST 1 A. TUJUAN PEMBELAJARAN Mahasiswa diharapkan mampu : 1. Memahami konsep SingleLinkedList untuk menambahkan node baru di awal, diakhir dan di index tertentu dan mengimplementasikan.

Lebih terperinci

STRUKTUR POHON & KUNJUNGAN POHON BINER

STRUKTUR POHON & KUNJUNGAN POHON BINER STRUKTUR POHON & KUNJUNGAN POHON BINER Pohon (Tree) termasuk struktur non linear yang didefinisikan sebagai data yang terorganisir dari suatu item informasi cabang yang saling terkait Istilah istilah Dalam

Lebih terperinci

Algoritma dan Struktur Data. Tree

Algoritma dan Struktur Data. Tree Algoritma dan Struktur Data Tree Outline 1. Apakah Tree Structure itu? 2. Binary Tree & implementasinya 3. Tree Traversal 4. Implementasi tree (selain binary tree) Apakah Tree Structure itu? Struktur data

Lebih terperinci

Metode Insertion Sort di Java Console

Metode Insertion Sort di Java Console Metode Insertion Sort di Java Console Oleh: Yudi Setiawan Pada tutorial sebelumnya, saya pernah jelaskan metode Bubble Sort dan Selection Sort. Nah, untuk tutorial kali ini saya akan membahas tentang Insertion

Lebih terperinci

Pohon (Tree) Universitas Gunadarma Sistem Informasi 2012/2013

Pohon (Tree) Universitas Gunadarma Sistem Informasi 2012/2013 Pohon (Tree) Universitas Gunadarma Sistem Informasi 2012/2013 Pohon (Tree) Pohon (Tree) didefinisikan sebagai graf terhubung yang tidak mengandung sirkuit. Karena merupakan graf terhubung, maka pohon selalu

Lebih terperinci

Ringkasan mengenai Tree (Dari beberapa referensi lain) Nina Valentika

Ringkasan mengenai Tree (Dari beberapa referensi lain) Nina Valentika Ringkasan mengenai Tree (Dari beberapa referensi lain) Nina Valentika December 31, 2015 0.1 Pendahuluan Figure 1: Contoh Tree. Tree/pohon merupakan struktur data yang tidak linear/non linear yang digunakan

Lebih terperinci

HEAP. Heap dan Operasinya. Oleh Andri Heryandi

HEAP. Heap dan Operasinya. Oleh Andri Heryandi HEAP Heap adalah sebuah binary tree dengan ketentuan sebagai berikut : Tree harus complete binary tree - Semua level tree mempunyai simpul maksimum kecuali pada level terakhir. - Pada level terakhir, node

Lebih terperinci

Gambar 1. Single Linked List

Gambar 1. Single Linked List PRAKTIKUM 16 SINGLE LINKED LIST 2 A. TUJUAN PEMBELAJARAN Mahasiswa diharapkan mampu : 1. Memahami konsep SingleLinkedList untuk menghapus sebuah node 2. Memahami konsep SingleLinkedList untuk mencari index

Lebih terperinci

BAB IV POHON. Diktat Algoritma dan Struktur Data 2

BAB IV POHON. Diktat Algoritma dan Struktur Data 2 iktat lgoritma dan Struktur ata 2 V POON efinisi Pohon Struktur pohon merupakan kumpulan elemen yang salah satu elemennya disebut akar dan sisa elemennya terpecah menjadi sejumlah himpunan yang saling

Lebih terperinci

Politeknik Elektronika Negeri Surabaya

Politeknik Elektronika Negeri Surabaya PRAKTIKUM 9 ALGORITMA PENGURUTAN (INSERTION SORT) A. TUJUAN PEMBELAJARAN 1. Memahami step by step algoritma pengurutan insertion sort. 2. Mampu mengimplementasikan algoritma pengurutan insertion sort dengan

Lebih terperinci

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA QUEUE

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA QUEUE MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA QUEUE Deskripsi Singkat merupakan bentuk struktur data seperti antrian yang memiliki konsep First In First Out (FIFO). Bermakna data yang pertama masuk merupakan

Lebih terperinci

PEMROGRAMAN JAVA. Yoannita, S.Kom. Input Kondisi (IF-ELSE, SWITCH)

PEMROGRAMAN JAVA. Yoannita, S.Kom. Input Kondisi (IF-ELSE, SWITCH) PEMROGRAMAN JAVA Yoannita, S.Kom Input Kondisi (IF-ELSE, SWITCH) 1 import java.io.* Operasi input/output dimaksudkan untuk berinteraksi dengan user, User mengetikkan sesuatu input, program java akan menerima

Lebih terperinci

Buku Ajar Struktur Data

Buku Ajar Struktur Data B a g i a n 5 Tujuan Instruksional Khusus Pokok Bahasan Mahasiswa mampu menjelaskan struktur data nonlinier Tree. Mahasiswa mampu memahami operasi pada struktur data Tree Struktur data Tree secara umum.

Lebih terperinci

STRUKTUR POHON (TREE) Pohon atau Tree adalah salah satu bentuk Graph terhubung yang tidak mengandung sirkuit.

STRUKTUR POHON (TREE) Pohon atau Tree adalah salah satu bentuk Graph terhubung yang tidak mengandung sirkuit. Pertemuan 9 STRUKTUR POHON (TREE) ISTILAH-ISTILAH DASAR Pohon atau Tree adalah salah satu bentuk Graph terhubung yang tidak mengandung sirkuit. Karena merupakan Graph terhubung, maka pada Pohon (Tree)

Lebih terperinci

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 2)

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 2) MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 2) Deskripsi Singkat Struktur data linked list telah kita pelajari pada praktikum sebelumnya. Praktikum ini akan memanfaatkan linked list

Lebih terperinci

METODE AVL TREE UNTUK PENYEIMBANGAN TINGGI BINARY TREE

METODE AVL TREE UNTUK PENYEIMBANGAN TINGGI BINARY TREE METODE AVL TREE UNTUK PENYEIMBANGAN TINGGI BINARY TREE Suwanty 1 Octara Pribadi 2 Program Studi Teknik Informatika 1,2 STMIK TIME 1,2 Jalan Merbabu No. 32 AA-BB Medan 1,2 e-mail : dharma_suwanty@gmail.com

Lebih terperinci

Binary Tree. Binary Tree dapat digambarkan berdasarkan kondisinya, sebagai berikut: Pointer ke akar (root) dari tree

Binary Tree. Binary Tree dapat digambarkan berdasarkan kondisinya, sebagai berikut: Pointer ke akar (root) dari tree Binary Tree Pendahuluan Binary Tree adalah struktur data yang hampir mirip juga dengan Linked List untuk menyimpan koleksi dari data. Linked List dapat dianalogikan sebagai rantai linier sedangkan Binary

Lebih terperinci

IKI 20100: Struktur Data & Algoritma

IKI 20100: Struktur Data & Algoritma IKI 20100: Struktur Data & Algoritma Priority Queue & Heap Ruli Manurung & Ade Azurat ( Setiawan (acknowledgments: Denny, Suryana Fasilkom UI Ruli Manurung & Ade Azurat Fasilkom UI - IKI20100 2007/2008

Lebih terperinci

Pohon. Bahan Kuliah IF2120 Matematika Diskrit. Program Studi Teknik Informatika ITB. Rinaldi M/IF2120 Matdis 1

Pohon. Bahan Kuliah IF2120 Matematika Diskrit. Program Studi Teknik Informatika ITB. Rinaldi M/IF2120 Matdis 1 Pohon Bahan Kuliah IF2120 Matematika Diskrit Program Studi Teknik Informatika ITB Rinaldi M/IF2120 Matdis 1 Definisi Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit a b a b a b a

Lebih terperinci

Pemrograman Algoritma Dan Struktur Data

Pemrograman Algoritma Dan Struktur Data MODUL PERKULIAHAN Modul ke: 14Fakultas Agus FASILKOM Pemrograman Algoritma Dan Struktur Data ADT BINARY TREE Hamdi.S.Kom,MMSI Program Studi Teknik Informatika ISTILAH-ISTILAH DASAR Pohon atau Tree adalah

Lebih terperinci

Tenia Wahyuningrum, S.Kom. MT Sisilia Thya Safitri, S.T.,M.T.

Tenia Wahyuningrum, S.Kom. MT Sisilia Thya Safitri, S.T.,M.T. tree Tenia Wahyuningrum, S.Kom. MT Sisilia Thya Safitri, S.T.,M.T Tree Kumpulan node yang saling terhubung satu sama lain dalam suatu kesatuan yang membentuk layakya struktur sebuah pohon. Tree merepresentasikan

Lebih terperinci

A B C E F G K Contoh Tree

A B C E F G K Contoh Tree Tree TREE Tree merupakan salah satu bentuk struktur data tidak linear yang menggambarkan hubungan yang bersifat hierarkis (hubungan one to many) antara elemen-elemen. Tree biasa didefinisikan sebagai kumpulan

Lebih terperinci

Penerapan Divide and Conquer dalam Membandingkan Alur Proses 2 Source Code

Penerapan Divide and Conquer dalam Membandingkan Alur Proses 2 Source Code Penerapan Divide and Conquer dalam Membandingkan Alur Proses 2 Source Code Gregorius Ronny Kaluge / 13508019 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

MAKALAH DESAIN DAN ANALISIS ALGORITMA BINARY TREE DISUSUN OLEH : 1. Nadim Achmad ( ) 2. Dzurratul Ulya ( )

MAKALAH DESAIN DAN ANALISIS ALGORITMA BINARY TREE DISUSUN OLEH : 1. Nadim Achmad ( ) 2. Dzurratul Ulya ( ) MAKALAH DESAIN DAN ANALISIS ALGORITMA BINARY TREE DISUSUN OLEH : 1. Nadim Achmad (105060 807111009) 2. Dzurratul Ulya (105060807111120) 3. Safer Yusuf (105060803111004 ) PROGRAM TEKNOLOGI INFORMASI DAN

Lebih terperinci

Pohon Biner (Bagian 1)

Pohon Biner (Bagian 1) Pohon Biner (Bagian 1) Tim Pengajar IF2110R Semester I 2016/2017 1 Tujuan Mahasiswa memahami definisi pohon dan pohon biner Berdasarkan pemahaman tersebut, mampu membuat fungsi sederhana yang memanipulasi

Lebih terperinci

TREE. Definisi. Istilah-istilah Umum dalam Tree

TREE. Definisi. Istilah-istilah Umum dalam Tree TREE Definisi Merupakan salah satu bentuk struktur data non-linear yang menggambarkan hubungan yang bersifat hirarkis antara elemen-elemen. Tree dapat juga didefinisikan sebagai kumpulan simpul/node dengan

Lebih terperinci

Pohon Biner Bagian 2 (Pohon Seimbang, Pohon Biner Terurut, Pembangunan Pohon Biner dari Pita Karakter/String)

Pohon Biner Bagian 2 (Pohon Seimbang, Pohon Biner Terurut, Pembangunan Pohon Biner dari Pita Karakter/String) Pohon Biner Bagian 2 (Pohon Seimbang, Pohon Biner Terurut, Pembangunan Pohon Biner dari Pita Karakter/String) Tim Pengajar IF2030 Semester I/2009-2010 12/10/2009 FNA/IF2030/Sem. 1 2008-2009 1 Pohon Biner

Lebih terperinci

Bahasa Pemrograman :: Dasar Pemrograman Java

Bahasa Pemrograman :: Dasar Pemrograman Java Bahasa Pemrograman :: Julio Adisantoso ILKOM IPB 26 April 2010 Bahasa Pemrograman :: 1 2 Program Hello World Java literal Tipe data Pernyataan print Latihan 3 BufferReader JOptionPane 4 Panjang array 5

Lebih terperinci

6. TREE / BINARY TREE

6. TREE / BINARY TREE 6. TREE / BINARY TREE TUJUAN PRAKTIKUM 1. Praktikan mengenal Struktur data Tree. 2. Praktikan mengenal jenis-jenis tree, seperti binary tree. 3. Praktikan mengenal istilah-istilah yang terdapat didalam

Lebih terperinci

DEFINISI. Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon 2

DEFINISI. Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon 2 1 POHON DEFINISI Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit a b a b a b a b c d c d c d c d e f e f e f e f pohon pohon bukan pohon bukan pohon 2 Hutan (forest) adalah - kumpulan

Lebih terperinci

STRUKTUR POHON (TREE) Pohon atau Tree adalah salah satu bentuk Graph terhubung yang tidak mengandung sirkuit.

STRUKTUR POHON (TREE) Pohon atau Tree adalah salah satu bentuk Graph terhubung yang tidak mengandung sirkuit. Pertemuan 9 STRUKTUR POHON (TREE) ISTILAH-ISTILAH DASAR Pohon atau Tree adalah salah satu bentuk Graph terhubung yang tidak mengandung sirkuit. Karena merupakan Graph terhubung, maka pada Pohon (Tree)

Lebih terperinci

Penerapan Pohon Untuk Memanipulasi dan Meritrieve Data

Penerapan Pohon Untuk Memanipulasi dan Meritrieve Data Penerapan Pohon Untuk Memanipulasi dan Meritrieve Data Calvin Irwan NIM 13507010 Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika Intstitut Teknologi Bandung email calvin_alonso@yahoo.com

Lebih terperinci

Metode Sequential Searching di Java Console

Metode Sequential Searching di Java Console Metode Sequential Searching di Java Console Oleh: Yudi Setiawan Dalam ilmu pemrograman, melakukan pencarian Data merupakan hal yang paling sering dilakukan dalam perusahaan. Pencarian memiliki beberapa

Lebih terperinci

A. TUJUAN PEMBELAJARAN

A. TUJUAN PEMBELAJARAN Praktikum 13 Algoritma Pencarian (Searching) A. TUJUAN PEMBELAJARAN Setelah melakukan praktikum dalam bab ini, mahasiswa diharapkan mampu: 1. Memahami konsep pencarian dengan metode sequential search dan

Lebih terperinci

Struktur Data. PDE - Struktur Data 1

Struktur Data. PDE - Struktur Data 1 Struktur Data Copyright@Ihsan Jatnika PDE - Struktur Data 1 Objektif Mengetahui maksud struktur data dan menjelaskan penggunaannya dalam pemrograman Mengetahui operasi yang terkait dengan struktur data

Lebih terperinci

Algoritma dan Struktur Data. Algoritma Pengurutan (Sorting)

Algoritma dan Struktur Data. Algoritma Pengurutan (Sorting) Algoritma dan Struktur Data Algoritma Pengurutan (Sorting) Tujuan Instruksional Memahami algoritma pengurutan Mengerti algoritma bubble, selection, insertion, merge sort Topik Algoritma pengurutan Bubble

Lebih terperinci

Penerapan Pohon Dalam Heap Sort

Penerapan Pohon Dalam Heap Sort enerapan ohon Dalam Sort Firdi Mulia Jurusan Teknik Informatika ITB, Bandung, email: if17045@students.if.itb.ac.id Abstract Makalah ini membahas tentang penerapan pohon heap dalam metode pengurutan data

Lebih terperinci

Pohon (TREE) Matematika Deskrit. Hasanuddin Sirait, MT 1

Pohon (TREE) Matematika Deskrit. Hasanuddin Sirait, MT 1 Pohon (TREE) Matematika Deskrit By @Ir. Hasanuddin Sirait, MT 1 Definisi Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit a b a b a b a b c d c d c d c d e f e f e f e f pohon pohon

Lebih terperinci

Implementasi Struktur Data Rope menggunakan Binary Tree dan Aplikasinya dalam Pengolahan Teks Sangat Panjang

Implementasi Struktur Data Rope menggunakan Binary Tree dan Aplikasinya dalam Pengolahan Teks Sangat Panjang Implementasi Struktur Data Rope menggunakan Binary Tree dan Aplikasinya dalam Pengolahan Teks Sangat Panjang Edwin Rachman (NIM 0) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika

Lebih terperinci

SORTING DENGAN ALGORITMA DIVIDE AND CONQUER

SORTING DENGAN ALGORITMA DIVIDE AND CONQUER SORTING DENGAN ALGORITMA DIVIDE AND CONQUER Ibnu Alam (13506024) Teknik Informatika Institut Teknologi Bandung Jalan Ganesha 10 if16024@students.if.itb.ac.id ABSTRAK Kemangkusan program adalah salah satu

Lebih terperinci

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK Deskripsi Singkat merupakan bentuk struktur data seperti tumpukan yang memiliki konsep Last In First Out (LIFO). Bermakna data yang terakhir masuk merupakan

Lebih terperinci

Matematika Diskret (Pohon) Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

Matematika Diskret (Pohon) Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs. Matematika Diskret (Pohon) Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs. Definisi Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit a b a b a b a b c d c d c d c d e f e f e f e f pohon

Lebih terperinci

Input Nilai tanpa Case String di Java

Input Nilai tanpa Case String di Java Input Nilai tanpa Case String di Java Oleh: Yudi Setiawan Input di Java umumnya ada Case String didalamnya namun, saya pernah dapat soal dimana sample input nya tidak terdapat Case String didalamnya. Lalu

Lebih terperinci

Gambar 1. Single Linked List

Gambar 1. Single Linked List PRAKTIKUM 16 ITERATOR PADA SINGLE LINKED LIST A. TUJUAN PEMBELAJARAN Mahasiswa diharapkan mampu : 1. Memahami konsep Iterator pada SingleLinkedList 2. Mengimplementasikan konsep Iterator pada SingleLinkedList

Lebih terperinci

BAB VIII Pencarian(Searching)

BAB VIII Pencarian(Searching) BAB VIII Pencarian(Searching) Tujuan 1. Menunjukkan beberapa algoritma dalam Pencarian 2. Menunjukkan bahwa pencarian merupakan suatu persoalan yang bisa diselesaikan dengan beberapa algoritma yang berbeda

Lebih terperinci

Linked List dan Implementasinya dalam Bahasa Java

Linked List dan Implementasinya dalam Bahasa Java Linked List dan Implementasinya dalam Bahasa Java tutorialpemrograman.wordpress.com - 2009 1 Single Linked List : ~ Setiap node pada linked list mempunyai field yang berisi pointer ke node berikutnya dan

Lebih terperinci

Politeknik Elektronika Negeri Surabaya

Politeknik Elektronika Negeri Surabaya PRAKTIKUM 12 ALGORITMA PENGURUTAN (SHELL SORT) A. TUJUAN PEMBELAJARAN 1. Memahami step by step algoritma pengurutan shell sort. 2. Mampu mengimplementasikan algoritma pengurutan shell sort dengan berbagai

Lebih terperinci

Metode Binnary Searching di Java Console

Metode Binnary Searching di Java Console Metode Binnary Searching di Java Console Oleh: Yudi Setiawan Dalam pemrograman, pencarian data merupakan suatu hal yang sangat gampang dilakukan. Anda sebagai programmer bisa menggunakan beberapa teknik

Lebih terperinci

Modul 3 Flow Control dan Input

Modul 3 Flow Control dan Input Modul 3 Flow Control dan Input Flow control terbagi menjadi dua, yaitu control seleksi dan control perulangan. 1. KONTROL SELEKSI Kontrol seleksi digunakan untuk membuat pemilihan terhadap aksi yang akan

Lebih terperinci

Kompleksitas Algoritma dari Algoritma Pembentukan pohon Huffman Code Sederhana

Kompleksitas Algoritma dari Algoritma Pembentukan pohon Huffman Code Sederhana Kompleksitas Algoritma dari Algoritma Pembentukan pohon Huffman Code Sederhana Muhammad Fiqri Muthohar NIM : 13506084 1) 1) Jurusan Teknik Informatika ITB, Bandung, email: fiqri@arc.itb.ac.id Abstrak makalah

Lebih terperinci

Definisi. Pohon adalah graf tak-berarah, terhubung, dan tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon (ada sikuit) (tdk terhubung)

Definisi. Pohon adalah graf tak-berarah, terhubung, dan tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon (ada sikuit) (tdk terhubung) POHON (TREE) Pohon Definisi Pohon adalah graf tak-berarah, terhubung, dan tidak mengandung sirkuit a b a b a b a b c d c d c d c d e f e f e f e f pohon pohon bukan pohon bukan pohon (ada sikuit) (tdk

Lebih terperinci

Pengertian Algoritma Pengurutan

Pengertian Algoritma Pengurutan SORTING Pengertian Algoritma Pengurutan (sorting) Dalam ilmu komputer, algoritma pengurutan adalah algoritma yang meletakkan elemen-elemen suatu kumpulan data dalam urutan tertentu. Atau proses pengurutan

Lebih terperinci

Aplikasi Pohon Pencarian Biner Seimbang sebagai Memo Table Dynamic Programming

Aplikasi Pohon Pencarian Biner Seimbang sebagai Memo Table Dynamic Programming Aplikasi Pohon Pencarian Biner Seimbang sebagai Memo Table Dynamic Programming Reinhard Benjamin Linardi, 13515011 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi

Lebih terperinci

A. TUJUAN PEMBELAJARAN 1. Memahami konsep dan operasi pada Stack. 2. Mampu mengimplementasikan struktur data Stack pada array dan List.

A. TUJUAN PEMBELAJARAN 1. Memahami konsep dan operasi pada Stack. 2. Mampu mengimplementasikan struktur data Stack pada array dan List. PRAKTIKUM 21 STACK A. TUJUAN PEMBELAJARAN 1. Memahami konsep dan operasi pada Stack. 2. Mampu mengimplementasikan struktur data Stack pada array dan List. B. DASAR TEORI Salah satu konsep yang efektif

Lebih terperinci

ARRAY. 7 th week Estu Sinduningrum ST,MT

ARRAY. 7 th week Estu Sinduningrum ST,MT ARRAY 7 th week Estu Sinduningrum ST,MT Aplikasi 2x Java Piramida Bilangan Piramida bilangan adalah deretan bilangan yang tersusun sedemikian rupa, sehingga membentuk suatu piramida bilangan. Puncak piramida

Lebih terperinci

Definisi. Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon

Definisi. Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon 1 Definisi Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit a b a b a b a b c d c d c d c d e f e f e f e f pohon pohon bukan pohon bukan pohon 2 Hutan (forest) adalah - kumpulan pohon

Lebih terperinci

Politeknik Elektronika Negeri Surabaya

Politeknik Elektronika Negeri Surabaya PRAKTIKUM 13 ALGORITMA PENGURUTAN (QUICK SORT) A. TUJUAN PEMBELAJARAN 1. Memahami step by step algoritma pengurutan quick sort. 2. Mampu mengimplementasikan algoritma pengurutan quick sort dengan berbagai

Lebih terperinci

Koleksi Hirarkis Tree

Koleksi Hirarkis Tree Koleksi Hirarkis Tree Husni Didasarkan pada buku: Fundamentals of Python: From First Programs Through Data Structures Okyektif Menjelaskan perbedaan antara pohon dan tipe koleksi lain menggunakan terminologi

Lebih terperinci

OPERASI LOGIKA PADA GENERAL TREE MENGGUNAKAN FUNGSI REKURSIF

OPERASI LOGIKA PADA GENERAL TREE MENGGUNAKAN FUNGSI REKURSIF OPERASI LOGIKA PADA GENERAL TREE MENGGUNAKAN FUNGSI REKURSIF Lutfi Hakim (1), Eko Mulyanto Yuniarno (2) Mahasiswa Jurusan Teknik Elektro (1), Dosen Pembimbing (2) Institut Teknologi Sepuluh Nopember (ITS)

Lebih terperinci