Diktat_Prosedural_12_Pohon

Diktat_Prosedural_12_Pohon

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: put Kiri : boolean) { I.S. P tidak kosong, X adalah salah satu daun Pohon Biner P } { F.S. P bertambah simpulnya, dengan Y sebagai anak kiri X (jika Kiri), atau sebagai anak Kanan X (jika not Kiri) } procedure DelDaunTerkiri (input/output P : BinTree, output X : infotype) { I.S. P tidak kosong } { F.S. P dihapus daun terkirinya, dan didealokasi, dengan X adalah info yang semula disimpan pada daun terkiri yang dihapus } procedure DelDaun (input/output P : BinTree, input X : infotype) { I.S. P tidak kosong, X adalah salah satu daun } { F.S. X dihapus dari P } function MakeListDaun (P : BinTree) → ListOfNode { Jika P adalah pohon kosong, maka menghasilkan list kosong. } Oleh: Inggriani Liem/Revisi bab oleh: Tim IF2030 sem. 1 2011-2012/Tgl. Revisi: 21 Nov 2011 6 Draft Diktat Struktur Data Hanya untuk digunakan di lingkungan Sekolah Teknik Elektro dan Informatika ITB { Jika P bukan pohon kosong: menghasilkan list yang elemennya adalah semua daun pohon P, jika semua alokasi berhasil. Menghasilkan list kosong jika ada alokasi yang gagal } function MakeListPreorder (P : BinTree) → ListOfNode { Jika P adalah pohon kosong, maka menghasilkan list kosong. } { Jika P bukan pohon kosong: menghasilkan list yang elemennya adalah semua elemen pohon P dengan urutan Preorder, jika semua alokasi berhasil. Menghasilkan list kosong jika ada alokasi yang gagal } function MakeListLevel (P : BinTree, N : integer) → ListOfNode { Jika P adalah pohon kosong, maka menghasilkan list kosong. } { Jika P bukan pohon kosong: menghasilkan list yang elemennya adalah semua elemen pohon P yang levelnya=N, jika semua alokasi berhasil. Menghasilkan list kosong jika ada alokasi yang gagal. } { Membentuk balanced tree } function BuildBalanceTree (n : integer) → BinTree { Menghasilkan sebuah balanced tree dengan n node, nilai setiap node dibaca } { Terhadap Binary Search Tree } function BSearch (P : BinTree, X : infotype) → boolean { Mengirimkan true jika ada node dari P yang bernilai X } function InsSearch (P : BinTree, X : infotype) → BinTree { Menghasilkan sebuah pohon Binary Search Tree P dengan tambahan simpul X. Belum ada simpul P yang bernilai X. } procedure DelBtree (input/output P : BinTree, input X : infotype) { I.S. Pohon P tidak kosong } { F.S. Nilai X yang dihapus pasti ada } { Sebuah node dg nilai X dihapus } KAMUS type node : < Info : infotype, Left : address, Right : address > type BinTree : address function Akar (P : BinTree) → infotype { Mengirimkan informasi yang tersimpan di Akar dari Pohon Biner yang tidak kosong } KAMUS LOKAL ALGORITMA → Info(P) function Left (P : BinTree) → BinTree { Mengirimkan anak kiri dari Pohon Biner yang tidak kosong } KAMUS LOKAL ALGORITMA → Left(P) Oleh: Inggriani Liem/Revisi bab oleh: Tim IF2030 sem. 1 2011-2012/Tgl. Revisi: 21 Nov 2011 7 Draft Diktat Struktur Data Hanya untuk digunakan di lingkungan Sekolah Teknik Elektro dan Informatika ITB function Right (P : BinTree) → BinTree { Mengirimkan anak kanan dari Pohon Biner yang tidak kosong } KAMUS LOKAL ALGORITMA → Right(P) function IsUner...
View Full Document

This document was uploaded on 03/15/2014 for the course IF 2030 at Institut Teknologi Bandung.

Ask a homework question - tutors are online