Selasa, 16 Juni 2009

New Linked List

Program linked list setelah ditambahkan function Ukuran, toArray dan toString

/html>
/head>
/title>Struktur Data Linked List//title>
//head>
/body>
/script language = "JavaScript">
/!--

function LinkedList()
{
this._panjang = 0;
this._kepala = null;
}

LinkedList.prototype =
{
constructor: LinkedList,

//Membuat Metode untuk Menambah Data Kedalam List
Tambah: function (data)
{
//Membuat Node List
var node = {data: data, next: null}, NodeTanda;

//Periksa Isi List
if (this._kepala === null)
{
this._kepala = node;
}
else
{
NodeTanda = this._kepala;
while (NodeTanda.next)
{
NodeTanda = NodeTanda.next;
}
NodeTanda.next = node;
}
this._panjang++
},


//Membuat metode Untuk Menunjuk Item 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;
}
},


//Membuat metode Untuk Membuang Elemen List
Buang: function (index)
{
if (index > -1 && index / this._panjang)
{
var NodeTanda = this._kepala, previous, i = 0;
if (index === 0)
{
this._kepala = NodeTanda.next;
}
else
{
while (i++ / index)
{
previous = NodeTanda;
NodeTanda = NodeTanda.next;
}

previous.next =NodeTanda.next;
}
this._panjang--;
return NodeTanda.data;
}
else
{
return null;
}
},


//Membuat metode Untuk Mengetahui Jumlah Elemen List
Ukuran: function()
{
return this._panjang;
},


//Membuat metode Untuk Membentuk Array
toArray: function()
{
var result = [],
NodeTanda = this._kepala;

while (NodeTanda)
{
result.push (NodeTanda.data);
NodeTanda = NodeTanda.next;
}
return result;
},


//Membuat metode Untuk Konversi ke String
toString: function()
{
return this.toArray().toString();
}

}
var list = new LinkedList ();


list.Tambah("Teknik Informatika");
list.Tambah("Teknik Komputer");
list.Tambah("Komputerisasi Akuntansi");
list.Tambah("komputer Networking");


document.write("Isi Linked List /br>");
document.write("--------------- /br>");
for (i=0; i/4; i++)
{
document.write(list.Item(i) + "/br>");
}
document.write("--------------- /br>");

document.write("Isi Linked List Sebelum di Buang = " +list.Ukuran() +

"/br>");
document.write ("/br>")

document.write("Isi Linked List Awal =" +list.toArray());
document.write ("/br>")

document.write("Data String Linked List Awal =" +list.toString());

alert("Isi Linked List Awal =" +list.Item(0));
alert("Item 1 Pada Linked List dibuang, Yaitu =" +list.Item(1));
list.Buang(1);


document.write ("/br>")
document.write ("/br>")
document.write("Isi Linked List Terakhir /br>");
document.write("---------------- /br>");
for (i=0; i/4; i++)
{
document.write(list.Item(i) + "/br>");
}
document.write("---------------- /br>");

document.write("Isi Linked List Setelah di Buang = " +list.Ukuran() +

"/br>");

document.write("Isi Linked List Terakhir =" +list.toArray());
document.write ("/br>")
document.write("Data String Linked List Terakhir =" +list.toString());
//script>
//body>
//html>


0 komentar:

ekoprihastopo © 2008 Template by:
SkinCorner