Friday, March 25, 2011
Suratku Untukmu ( Sisip Linked List)
Posted by Dendi Prana Yudha in
Kuliah
<html> <head> <title>Sisip Linked List</title> </head> <body> <script language="javascript"> <!-- function linkedlist() { this.panjang = 0; this.kepala = null; } linkedlist.prototype = { constructor : linkedlist, //Metode untuk menambah data tambah: function (data) { var node = {data:data,next:null}; var NodeTanda; if (this.kepala === null) { this.kepala = node; } else { NodeTanda = this.kepala; while (NodeTanda.next) { NodeTanda = NodeTanda.next; } NodeTanda.next = node; } this.panjang++; }, //Metode untuk menampilkan data item: function(index) { if (index > -1 && index < this.panjang) { var NodeTanda = this.kepala,i = 0; while(i++ < index) { NodeTanda = NodeTanda.next; } return NodeTanda.data; } else { return null; } }, //Metode untuk membuang data buang: function(index) { if (index > -1 && index < this.panjang) { var NodeTanda = this.kepala, previous, i = 0; // Membuang kepala if (index === 0) { this.kepala = NodeTanda.next; } else { //Mencari index yang tepat while(i++ < index) { previous = NodeTanda; NodeTanda = NodeTanda.next; } previous.next = NodeTanda.next; } //decrement panjang this.panjang--; //return data return NodeTanda.data; } else { return null; } }, //Metode untuk menyisipkan data sisip: function(index,data) { var node = {data:data,next:null}; var NodeTanda = this.kepala, i = 1; if (index === 0) { node.next = this.kepala; this.kepala = node; } else { while (i++ < index) { NodeTanda = NodeTanda.next; } node.next = NodeTanda.next; NodeTanda.next = node; } this.panjang++; }, //Metode untuk melihat ukuran panjang linked list ukuran: function() { return this.panjang; }, //Metode untuk merubah ke Array toArray: function() { var result = []; var NodeTanda = this.kepala; while(NodeTanda) { result.push(NodeTanda.data); NodeTanda = NodeTanda.next; } return result; }, //Metode untuk merubah ke String toString: function() { return this.toArray().toString(); } }; //Fungsi untuk menampilkan isi variabel list function tampil() { for (i=0; i<6; i++) { document.write(list.item(i) + "<br>"); } document.write("<hr>"); } var list = new linkedlist(); //Menambah data ke variabel pada list list.tambah("Teknik Informatika"); list.tambah("Teknik Komputer"); list.tambah("Komputer Akutansi"); list.tambah("Computer Nerworking"); list.tambah("Manajemen Informatika"); list.tambah("Sistem Informatika"); document.write("Isi LinkedList : <br>"); tampil(); //Membuang salahsatu isi variabel list list.buang(1); document.write("Isi LinkedList : (Setelah data pada index ke-1 dibuang) <br>"); tampil(); //Menyisipkan data ke variabel list list.sisip(2,"Teknik Nuklir"); document.write("Isi LinkedList : (Setelah menyisipkan data di index ke-2) <br>"); tampil(); document.write("Panjang variabel list adalah = "); document.write(list.ukuran()); //--> </script> </body> </html>
0 komentar:
Post a Comment
Tinggalkan Komentar Disini