<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>");
alert("Isi Linked List Awal =" +list.Item(0));
alert("Item 1 Pada Linked List dibuang, Yaitu =" +list.Item(1));
list.Buang(1);
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>");
//-->
</script>
</body>
</html>
Thursday, May 27, 2010
LinkedList Sisip
<html>
<head>
<title>Linked List Sisip</title></head>
<body>
<script language = "JavaScript">
<!--
function LinkedList()
{
this._panjang = 0;
this._kepala = null;
}
LinkedList.prototype =
{
constructor : LinkedList,
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++;
},
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;
}
},
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--;
}
else
{
return null;
}
},
sisip : function(index,data)
{
var node = {data : data, next:null};
var temp = "";
if( index > -1 && index < this._panjang)
{
var NodeTanda = this._kepala, i=0;
this.tambah("x");
while(i++ < index)
{
NodeTanda = NodeTanda.next;
}
while(index++ < this._panjang)
{
temp = NodeTanda.data;
NodeTanda.data = data;
NodeTanda = NodeTanda.next;
data = temp;
}
}
this._panjang++;
},
Ukuran : function()
{
return this._panjang;
},
toArray : function()
{
var result = [],
NodeTanda = this._kepala;
while (NodeTanda)
{
result.push(NodeTanda.data);
NodeTanda = NodeTanda.next;
}
return result;
},
toString : function()
{
return this.toArray().toSring();
}
}
var list = new LinkedList();
list.tambah("Teknik Informatika");
list.tambah("Teknik Komputer");
list.tambah("Komputer Akutansi");
list.tambah("Computer Nerworking");
list.tambah("Sistem Informasi");
list.tambah("Management Informatika");
document.write("Isi LinkedList <br>");
document.write("--------------- <br>");
for (i=0;i<6;i++)
{
document.write(list.Item(i) + "<br>");
}
document.write("----------------<br>");
alert("Isi LinkedList awal = " + list.Item(0));
alert("Item 1 Pada LinkedList Dibuang, yaitu = " + list.Item(0));
list.Buang(0);
document.write("<br><br>");
document.write("Isi LinkedList Terakhir <br>");
document.write("--------------- <br>");
for (i=0;i<6;i++)
{
if (list.Item(i) == null)
{
document.write("--");
}
else
{
document.write(list.Item(i) + "<br>");
}
}
document.write("--------------- <br>");
document.write("<br>");
document.write("--------------- <br>");
document.write("Isi Linkedlist Disisipkan Lagi <br>");
document.write("--------------- <br>");
list.sisip(0,"");
var x=prompt("Sisipkan Kembali Data =");
{
document.write(x);
}
for (i=0;i<6;i++)
{
document.write(list.Item(i) + "<br>");
}
document.write("----------------<br>");
alert("Setelah Disisipkan");
//-->
</script>
</body>
</html>
<head>
<title>Linked List Sisip</title></head>
<body>
<script language = "JavaScript">
<!--
function LinkedList()
{
this._panjang = 0;
this._kepala = null;
}
LinkedList.prototype =
{
constructor : LinkedList,
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++;
},
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;
}
},
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--;
}
else
{
return null;
}
},
sisip : function(index,data)
{
var node = {data : data, next:null};
var temp = "";
if( index > -1 && index < this._panjang)
{
var NodeTanda = this._kepala, i=0;
this.tambah("x");
while(i++ < index)
{
NodeTanda = NodeTanda.next;
}
while(index++ < this._panjang)
{
temp = NodeTanda.data;
NodeTanda.data = data;
NodeTanda = NodeTanda.next;
data = temp;
}
}
this._panjang++;
},
Ukuran : function()
{
return this._panjang;
},
toArray : function()
{
var result = [],
NodeTanda = this._kepala;
while (NodeTanda)
{
result.push(NodeTanda.data);
NodeTanda = NodeTanda.next;
}
return result;
},
toString : function()
{
return this.toArray().toSring();
}
}
var list = new LinkedList();
list.tambah("Teknik Informatika");
list.tambah("Teknik Komputer");
list.tambah("Komputer Akutansi");
list.tambah("Computer Nerworking");
list.tambah("Sistem Informasi");
list.tambah("Management Informatika");
document.write("Isi LinkedList <br>");
document.write("--------------- <br>");
for (i=0;i<6;i++)
{
document.write(list.Item(i) + "<br>");
}
document.write("----------------<br>");
alert("Isi LinkedList awal = " + list.Item(0));
alert("Item 1 Pada LinkedList Dibuang, yaitu = " + list.Item(0));
list.Buang(0);
document.write("<br><br>");
document.write("Isi LinkedList Terakhir <br>");
document.write("--------------- <br>");
for (i=0;i<6;i++)
{
if (list.Item(i) == null)
{
document.write("--");
}
else
{
document.write(list.Item(i) + "<br>");
}
}
document.write("--------------- <br>");
document.write("<br>");
document.write("--------------- <br>");
document.write("Isi Linkedlist Disisipkan Lagi <br>");
document.write("--------------- <br>");
list.sisip(0,"");
var x=prompt("Sisipkan Kembali Data =");
{
document.write(x);
}
for (i=0;i<6;i++)
{
document.write(list.Item(i) + "<br>");
}
document.write("----------------<br>");
alert("Setelah Disisipkan");
//-->
</script>
</body>
</html>
Friday, May 21, 2010
Queue (Antrian)
<html>
<head>
<title>Program Queue dengan Shift dan Unshift</title>
<script language="javascript">
<!--
function DataQueue()
{
var queue = [];
queue.unshift(1);
queue.unshift(2);
var i = queue.shift();
document.write(i + "<br>");
queue.unshift("Pertama");
queue.unshift("Kedua");
var i = queue.shift();
document.write(i + "<br>");
document.write(queue[0]);
}
//-->
</script>
</head>
<body><body bgcolor=lavender>
<form name = "FormStrukturData">
<input name = "btnQueue" value = "Queue" type = "button" onClick="DataQueue();" />
</form>
</body>
</html>
<head>
<title>Program Queue dengan Shift dan Unshift</title>
<script language="javascript">
<!--
function DataQueue()
{
var queue = [];
queue.unshift(1);
queue.unshift(2);
var i = queue.shift();
document.write(i + "<br>");
queue.unshift("Pertama");
queue.unshift("Kedua");
var i = queue.shift();
document.write(i + "<br>");
document.write(queue[0]);
}
//-->
</script>
</head>
<body><body bgcolor=lavender>
<form name = "FormStrukturData">
<input name = "btnQueue" value = "Queue" type = "button" onClick="DataQueue();" />
</form>
</body>
</html>
Stack (Tumpukan)
<html>
<head>
<title>Penggunaan Struktur Data Stack (Tumpukan)</title>
<script language="javascript">
<!--
var stack = new Array();
function input_ke_stack(data)
{
stack.push(data);
}
function ambil_dari_stack()
{
var yang_ambil_dari_stack = stack.pop();
if (stack.length == 0)
return (yang_ambil_dari_stack + " -> stack sudah kosong");
else
return yang_ambil_dari_stack;
}
function dalam_antrian(list)
{
list.options.length = 0;
for (var i = 0; i < stack.length; i++)
{
var data = new Option(stack[i]);
list.options[list.options.length] = data;
}
}
//-->
</script>
</head>
<body>
<font color=#992811>Visualisasi stack (Tumpukan)</font>
<form>
<input type=text name=textSimpan>
<input type=button value="Masuk Tumpukan" onClick = 'input_ke_stack(textSimpan.value);
textSimpan.value = "";
dalam_antrian(visualisasi);'>
<select name="visualisasi" size=12>
<option>Isi antrian....
</select>
<br>
<input type=text name=textAmbil size=20>
<input type=button value="Keluar Dari Tumpukan" onClick='textAmbil.value = ambil_dari_stack();
dalam_antrian(visualisasi);'>
</form>
</body>
</html>
<head>
<title>Penggunaan Struktur Data Stack (Tumpukan)</title>
<script language="javascript">
<!--
var stack = new Array();
function input_ke_stack(data)
{
stack.push(data);
}
function ambil_dari_stack()
{
var yang_ambil_dari_stack = stack.pop();
if (stack.length == 0)
return (yang_ambil_dari_stack + " -> stack sudah kosong");
else
return yang_ambil_dari_stack;
}
function dalam_antrian(list)
{
list.options.length = 0;
for (var i = 0; i < stack.length; i++)
{
var data = new Option(stack[i]);
list.options[list.options.length] = data;
}
}
//-->
</script>
</head>
<body>
<font color=#992811>Visualisasi stack (Tumpukan)</font>
<form>
<input type=text name=textSimpan>
<input type=button value="Masuk Tumpukan" onClick = 'input_ke_stack(textSimpan.value);
textSimpan.value = "";
dalam_antrian(visualisasi);'>
<select name="visualisasi" size=12>
<option>Isi antrian....
</select>
<br>
<input type=text name=textAmbil size=20>
<input type=button value="Keluar Dari Tumpukan" onClick='textAmbil.value = ambil_dari_stack();
dalam_antrian(visualisasi);'>
</form>
</body>
</html>
Subscribe to:
Comments (Atom)









