Mengelompokan Program yang ada di linux.
Pengelompokan :
ï?? Office
ï?¶ OpenOffice.
OpenOffice.org adalah seperangkat lunak perkantoran yang didalamnya terdapat fungsi pengolah kata (word processing), pengolah lembar (spreadsheet), pembuatan gambar (drawing), pembuatan presentasi (presentation), pengolahan data, web editor, database, dan formula editing.
Komponen dalam OpenOffice.org adalah :
1. OpenOffice.org Writer, adalah program perkantoran untuk mengolah kata dan sama seperti Microsoft Word pada Microsoft Office. Berguna untuk membuat dokumen tulisan, misal surat, buku, laporan, dll.
2. OpenOffice.org Calc, adalah aplikasi perkantoran berupa spreadsheet yang lengkap, sama seperti Microsoft Excell pada Microsoft Office.
3. OpenOffice.org Impress, adalah program untuk membuat presentasi sebagaimana Microsoft PoworPoint pada Microsoft Office.
4. OpenOffice.org Draw, adalah program untuk menggambar dan dilengkapi dengan tool dalam membuat 3D, membuat efek kewarnaan, dll. Program ini hampir sama dengan Microsoft Visio pada Microsoft Office.
5. OpenOffice.org Math, adalah program untuk menulis formula (rumus matematika), seperti halnya Microsoft Equation Editor pada Microsoft Office.
6. OpenOffice.org Base, adalah aplikasi untuk membuat database, seperti halnya Microsoft Access pada Microsoft Office.
ï?¶ StraOffice.
Sepanjang sejarahnya, StarOffice belum pernah menjadi open source dan tidak akan pernah menjadi open source. Malahan, versi 6 dari StarOffice menjadi berlisensi komersial biasa seperti halnya MS Office atau Corel WordPerfect Office Versi open source StarOffice memang ada, disebut OpenOffice, yang analog dengan Mozilla terhadap Netscape 6. Jadi, penyebutan StarOffice sebagai aplikasi open source cukup menyesatkan, karena yang open source itu adalah OpenOffice, variannya, dan juga beberapa aplikasi office lain di Linux (Koffice, Siag Office).
ï?¶ Koffice.
Aplikasi KOffice ini merupakan produk open source, yang terdiri dari KWord word processor, KSpread spreadsheet calculator, KPresenter presentation manager, KPlato project management software, Karbon vector graphics editor dan Krita raster graphics editor. Sedangkan untuk aplikasi pembuatan chart dapat dibuat dalam Kchart, dimana chart dapat dibuat sebagai plugin untuk dipasang di seluruh aplikasi KOffice. Hal yang menarik dari KOffice ini bahwa semua aplikasi di dalamnya terintegrasi dengan baik satu sama lain. â??Sebagai contoh, Kword dapat ditempeli dengan grafis bitmap, di Krita dapat ditempeli grafis vector dan Karbon dapat ditempeli chart.
ï?¶ GNOME Office.
GNOME Office merupakan paket aplikasi perkantoran berbasis GTK dan desktop GNOME. Paket aplikasi perkantoran yang satu ini sangat ringan digunakan dibandingkan dengan OpenOffice.. GNOME Office terdiri dari :
â?¢ Abiword Word Processor
â?¢ Gnumeric Spreadsheet
â?¢ Planner Project Management
â?¢ Dia Diagram
â?¢ GIMP Image Editor
â?¢ Inkscape SVG Vector Ilustrator
ï?? Pemrograman.
ï?¶ Gambas.
Dalam pengembangan perangkat lunak, Gambas adalah dialek bahasa pemrograman BASIC yang berorientasi objek, disertai dengan lingkungan pengembangan terintegrasi (Integrated Development Environment). Gambas berjalan di sistem operasi Linux dan sistem operasi Unix-like lainnya. Gambas ditujukan bagi pengguna Visual Basic yang bermigrasi ke Linux.
'Gambas' adalah singkatan berulang dari Gambas Almost Means Basic. Gambas juga berarti 'udang' dalam bahasa Spanyol, sesuai dengan logo yang digunakan Gambas, yakni seekor udang.
Gambas yang dikembangkan di Paris oleh Benoît Minisini sejak 1999, merupakan perangkat lunak bebas yang dirilis di bawah lisensi GNU General Public License.
ï?¶ Php.
PHP merupakan script yang menyatu dengan HTML dan berada pada server (server side HTML embedded scripting). Dengan PHP ini Anda dapat membuat beragam aplikasi berbasis web, mulai dari halaman web yang sederhana sampai aplikasi komplek yang membutuhkan koneksi ke database.
Sampai saat ini telah banyak database yang telah didukung oleh PHP dan kemungkinan akan terus bertambah.
ï?¶ Java.
Java diluncurkan pertama sekali pada tahun 1995 sebagai bahasa pemrograman umum (general purpose programming language). Dengan visi "write once run anywhere", para perancang Java memulai dengan menanamkan visi mereka ke dalam Java untuk membuat piranti-piranti yang ada di rumah (small embedded customer device) seperti TV, telepon, radio, dan sebagainya supaya dapat berkomunikasi satu sama lain.
Langkah pertama yang diambil oleh Sun Microsystem adalah dengan membuat JVM (Java Virtual Machine) yang kemudian diimplementasikan dalam bentuk JRE (Java Runtime Environment). JVM merupakan lingkungan tempat eksekusi program Java berlangsung dimana para objek saling berinteraksi satu dengan yang lainnya. Dengan konsep Virtual Machine membuat Java mempunyai kemampuan penanganan memori yang lebih baik, keamanan yang lebih tinggi serta portabilitas yang besar.
ï?? Sound dan Multimedia.
ï?¶ Aplikasi Multimedia.
Hal ini bisa dilakukan dengan perintah cdrecord dari command line maupun dari GUI dengan program Nautilus browser,Gnome Baker, x-cd-Roast, maupun Sepertine.
ï?¶ Aplikasi Musik.
Kita bisa sekedar meminta musik, ,merekam suara, atau mengganti format file musik dengan program seperti alsamixer, sound Jouricer, Banshee, xmms, dan Rhythmbox.
ï?¶ Memutar Film.
Karena isu lisensi dan paten, secara otomatis software untuk memutar film tidak ada, tetapi kita mendownload/copy programnya sendiri dan menginstalnya.
ï?¶ Menonton Tv.
Hal ini bisa kita lakukan dengan menggunakan program tv time.
ï?? Internet.
ï?¶ Mozilla.
Produk-produk dari Mozilla Foundationâ??Mozilla Suite (biasa disebut Mozilla saja), browser saudaranya â??Firefox, dan turunannya â??Netscapeâ??termasuk browser alternatif yang digemari para peselancar web. Pemblok popup, keamanan serta tabbed browsing merupakan dua daya tarik keluarga browser ini di sistem operasi Windows. Pada Linux, Mozilla merupakan browser utama, selain Konqueror. Setting juga bisa dilakukan dengan menggunakan file konfigurasi. Pengguna Linux tentu tidak akan asing lagi pada cara ini, karena banyak program di Linux disetel dengan cara ini. File konfigurasi Mozilla/Firefox bernama user.js. File ini harus dalam format plain text. Anda tidak akan menemukan file ini pada instalasi default, sehingga Anda harus membuat file ini terlebih dahulu.
Kelebihan cara kedua ini adalah setelan browser Anda dengan mudah dapat dipertahankan meskipun Anda mengupgrade browser Mozilla/Firefox. Caranya cukup dengan mem-backup file user.js.
Selasa, 30 Juni 2009
Selasa, 23 Juni 2009
Pengurutan (Sort)
<html><head>
<script LANGUAGE="JavaScript">
function Urutkan (form)
{
DataKosong = false;
DataInputan = form.Data.value;
inputData = DataInputan.split(",");
for (var i = 0; i < inputData.length; i++)
{
inputData[i] = parseInt (inputData[[i], 10);
if (isNan(inputData[i]))
{
DataKosong = true;
break;
}
}
inputData = bubbleSort(inputData, 0, inputData.length - 1);
if (DataKosong)
{
alert("Silakan Entri Dulu Data, Pisahkan dengan tanda Koma");
form.Data.focus();
}
else
form.Hasil.value = DataString(inputData, 0);
}
function DataString (ArrayData, Angka)
{
if ((ArrayData.length - 1) >= Angka)
return (ArrayData[Angka] + "," + DataString(ArrayData,(Angka + 1)));
else
return "";
}
function bubbleSort (ArrayData, Mulai, MulaiBaru)
{
for (var i = MulaiBaru - 1; i >= Mulai; i--)
{
for (var j = Mulai; j <= i; j++)
{
if (ArrayData[j+1] < ArrayData[j])
{
var DataTemporer = ArrayData[j];
ArrayData[j] = ArrayData[j+1];
ArrayData[j+1] = DataTemporer;
}
}
}
return ArrayData;
}
</script>
</head>
<body>
<center>
<form>
Masukan Deretan Angka, Pisahkan dengan Koma :
<hr>
<input type=text name=Data size=30 value="5,6,8,5,12,4,8,4,20">
<br>
<br>
<input type=button value="Urutkan" onClick="Urutkan(this.form)">
<br>
<br>
<br>
Hasil Pengurutan :
<hr>
<input type=text name=Hasil size=30>
</form>
</center>
</body>
</html>
<script LANGUAGE="JavaScript">
function Urutkan (form)
{
DataKosong = false;
DataInputan = form.Data.value;
inputData = DataInputan.split(",");
for (var i = 0; i < inputData.length; i++)
{
inputData[i] = parseInt (inputData[[i], 10);
if (isNan(inputData[i]))
{
DataKosong = true;
break;
}
}
inputData = bubbleSort(inputData, 0, inputData.length - 1);
if (DataKosong)
{
alert("Silakan Entri Dulu Data, Pisahkan dengan tanda Koma");
form.Data.focus();
}
else
form.Hasil.value = DataString(inputData, 0);
}
function DataString (ArrayData, Angka)
{
if ((ArrayData.length - 1) >= Angka)
return (ArrayData[Angka] + "," + DataString(ArrayData,(Angka + 1)));
else
return "";
}
function bubbleSort (ArrayData, Mulai, MulaiBaru)
{
for (var i = MulaiBaru - 1; i >= Mulai; i--)
{
for (var j = Mulai; j <= i; j++)
{
if (ArrayData[j+1] < ArrayData[j])
{
var DataTemporer = ArrayData[j];
ArrayData[j] = ArrayData[j+1];
ArrayData[j+1] = DataTemporer;
}
}
}
return ArrayData;
}
</script>
</head>
<body>
<center>
<form>
Masukan Deretan Angka, Pisahkan dengan Koma :
<hr>
<input type=text name=Data size=30 value="5,6,8,5,12,4,8,4,20">
<br>
<br>
<input type=button value="Urutkan" onClick="Urutkan(this.form)">
<br>
<br>
<br>
Hasil Pengurutan :
<hr>
<input type=text name=Hasil size=30>
</form>
</center>
</body>
</html>
Minggu, 21 Juni 2009
Graf / Graph
html>
?head>
?title>Dijkstra Algoritms ?/title>
?script>
?!--
alert("Taet Dijkstra");
//-->
?/script>
?/head>
?body>
?script language = "javascript">
var NilaiAcuan =10000
var TakTerdefinisi =-1
var Nama Verteks =new Array ('A','B','C','D','E','F')
var Matriks =new Array (6)
function Bobot (a,b)
{
return Matriks[a][b]
}
function Dijkstra (JumlahVerteks,Awal,d)
{
var Posisi =new Array(JumlahVerteks);
var i =new Array(JumlahVerteks);
var Kunjungan =new Array(JumlahVerteks);
var Sebelum =new Array(JumlahVerteks);
for (i=0; i?JumlahVerteks; i++);
{
Posisi[i] = NilaiAcuan
Sebelum[i] = TakTerdefinisi
Kunjungan[i] = false
}
Posisi[Awal] =0
var Verteks;
for (Verteks = 0; Verteks ? JumlahVerteks; Verteks++) {
var JarakTerpendek =NilaiAcuan, Berhenti = -1
for (i=0; i ? JumlahVerteks; i++);
{
if (!Kunjungan[i])
{
if (posisi[i] ?= JarakTerpendek {
JarakTerpendek = Posisi[i]; Berhenti =i;
}
}
}
Kunjungan[Berhenti] = true
for (i=0; i ? JumlahVerteks; i++);
{
if (!Kunjungan [i])
{
var w = Bobot (Berhenti, i);
if (Posisi[Berhenti]+w ? Posisi[i]);
{
Posisi[i] = Posisi[Berhenti]+w;
Sebelum[i] = Berhenti;
}
}
}
}
i=d
if (Posisi[i] ? NilaiAcuan) {
var Lintangan = NamaVerteks [i];
var Verteks = i;
while (Verteks>0)
{
Verteks = Sebelum[Verteks];
if (Verteks>=0) Lintasan = NamaVereteks [Verteks] + '->' + Lintasan;
{
message ("Jarak ; "+Posisi[i]+'('Lintasan+')'+'?br>');
}else
{
message ("Tidak ada Jalur")
}
}
function init() {
var x = NilaiAcuan
Matriks[0]=new Array(0,2,3,x,x,x)
Matriks[1]=new Array(2,0,3,6,x,x)
Matriks[2]=new Array(3,3,0,3,5,x)
Matriks[3]=new Array(x,6,3,0,1,3)
Matriks[4]=new Array(x,x,5,1,0,1)
Matriks[5]=new Array(x,x,x,3,1,0)
var Awal='?pre>'
Awal = Awal + 'A--2-B-6--D--3-F'+'?br>'
Awal = Awal + ' \ | /| / '+'?br>'
Awal = Awal + ' 3 3 3 1 1 '+'?br>'
Awal = Awal + ' \ | / | / '+'?br>'
Awal = Awal + ' \|/ |/ '+'?br>'
Awal = Awal + ' C--5-E '+'?br>'
Awal = Awal +'?/pre>'
message (Awal.replace(/(\d)+/g, '?font color ="red">$1?/font>'));
}
init()
var Dari=0 // A
var Ke =5 // F
Dijkstra(Matriks.length,Dari,Ke);
//-->
?/script>
?/body>
?/html>
?head>
?title>Dijkstra Algoritms ?/title>
?script>
?!--
alert("Taet Dijkstra");
//-->
?/script>
?/head>
?body>
?script language = "javascript">
var NilaiAcuan =10000
var TakTerdefinisi =-1
var Nama Verteks =new Array ('A','B','C','D','E','F')
var Matriks =new Array (6)
function Bobot (a,b)
{
return Matriks[a][b]
}
function Dijkstra (JumlahVerteks,Awal,d)
{
var Posisi =new Array(JumlahVerteks);
var i =new Array(JumlahVerteks);
var Kunjungan =new Array(JumlahVerteks);
var Sebelum =new Array(JumlahVerteks);
for (i=0; i?JumlahVerteks; i++);
{
Posisi[i] = NilaiAcuan
Sebelum[i] = TakTerdefinisi
Kunjungan[i] = false
}
Posisi[Awal] =0
var Verteks;
for (Verteks = 0; Verteks ? JumlahVerteks; Verteks++) {
var JarakTerpendek =NilaiAcuan, Berhenti = -1
for (i=0; i ? JumlahVerteks; i++);
{
if (!Kunjungan[i])
{
if (posisi[i] ?= JarakTerpendek {
JarakTerpendek = Posisi[i]; Berhenti =i;
}
}
}
Kunjungan[Berhenti] = true
for (i=0; i ? JumlahVerteks; i++);
{
if (!Kunjungan [i])
{
var w = Bobot (Berhenti, i);
if (Posisi[Berhenti]+w ? Posisi[i]);
{
Posisi[i] = Posisi[Berhenti]+w;
Sebelum[i] = Berhenti;
}
}
}
}
i=d
if (Posisi[i] ? NilaiAcuan) {
var Lintangan = NamaVerteks [i];
var Verteks = i;
while (Verteks>0)
{
Verteks = Sebelum[Verteks];
if (Verteks>=0) Lintasan = NamaVereteks [Verteks] + '->' + Lintasan;
{
message ("Jarak ; "+Posisi[i]+'('Lintasan+')'+'?br>');
}else
{
message ("Tidak ada Jalur")
}
}
function init() {
var x = NilaiAcuan
Matriks[0]=new Array(0,2,3,x,x,x)
Matriks[1]=new Array(2,0,3,6,x,x)
Matriks[2]=new Array(3,3,0,3,5,x)
Matriks[3]=new Array(x,6,3,0,1,3)
Matriks[4]=new Array(x,x,5,1,0,1)
Matriks[5]=new Array(x,x,x,3,1,0)
var Awal='?pre>'
Awal = Awal + 'A--2-B-6--D--3-F'+'?br>'
Awal = Awal + ' \ | /| / '+'?br>'
Awal = Awal + ' 3 3 3 1 1 '+'?br>'
Awal = Awal + ' \ | / | / '+'?br>'
Awal = Awal + ' \|/ |/ '+'?br>'
Awal = Awal + ' C--5-E '+'?br>'
Awal = Awal +'?/pre>'
message (Awal.replace(/(\d)+/g, '?font color ="red">$1?/font>'));
}
init()
var Dari=0 // A
var Ke =5 // F
Dijkstra(Matriks.length,Dari,Ke);
//-->
?/script>
?/body>
?/html>
Selasa, 09 Juni 2009
Tugas DoublyLinkedList
<html>
<head>
<title>Struktur Data Linked List</title>
</head>
<body>
<script language = "JavaScript">
<!--
function DoublyLinkedList()
{
this._Kepala = null;
this._Ekor = null;
this._Panjang = 0;
}
DoublyLinkedList.prototype =
{
constructor: DoublyLinkedList,
Tambah: function (data)
{
var node = {data: data, next: null, prev: null};
if (this._Panjang == 0)
{
this._Kepala = node;
this._Ekor = node;
}
else
{
this._Ekor.next = node;
node.prev = this._Ekor;
this._Ekor = node;
}
this._Panjang++;
},
ItemList: 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, i = 0;
if (index === 0)
{
this._Kepala = NodeTanda.next;
if (!this._Kepala)
{
this._Ekor = null;
}
else
{
this._Kepala.prev = null;
}
}
else
if (index === this._Panjang -1)
{
NodeTanda = this._Ekor;
this._Ekor = NodeTanda.prev;
this._Ekor.next = null;
}
else
{
while(i++ < index)
{
NodeTanda = NodeTanda.next;
}
NodeTanda.prev.next = NodeTanda.next;
}
this._Panjang--;
return NodeTanda.data;
}
else
{
return null;
}
},
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().toString();
}
}
var List = new DoublyLinkedList();
List.Tambah("Tekhnik Informatika");
List.Tambah("Tekhnik Komputer");
List.Tambah("Komputerisasi Akuntansi");
List.Tambah("Computer Networking");
document.write("Isi LinkedList <br>");
document.write("--------------- <br>");
for (i=0; i<4; i++)
{
document.write(List.ItemList(i) + "<br>") ;
}
document.write("--------------- <br>");
alert("Isi LinkedList Awal =" + List.ItemList(0));
alert("ItemList 1 pada Linked List diBuang, yaitu = " +List.ItemList(1));
List.Buang(1);
document.write("<br>Isi LinkedList Terakhir <br>");
document.write("--------------- <br>");
for (i=0; i<4; i++)
{
document.write(List.ItemList(i) + "<br>") ;
}
document.write("--------------- <br>");
//-->
</script>
</body>
</html>
<head>
<title>Struktur Data Linked List</title>
</head>
<body>
<script language = "JavaScript">
<!--
function DoublyLinkedList()
{
this._Kepala = null;
this._Ekor = null;
this._Panjang = 0;
}
DoublyLinkedList.prototype =
{
constructor: DoublyLinkedList,
Tambah: function (data)
{
var node = {data: data, next: null, prev: null};
if (this._Panjang == 0)
{
this._Kepala = node;
this._Ekor = node;
}
else
{
this._Ekor.next = node;
node.prev = this._Ekor;
this._Ekor = node;
}
this._Panjang++;
},
ItemList: 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, i = 0;
if (index === 0)
{
this._Kepala = NodeTanda.next;
if (!this._Kepala)
{
this._Ekor = null;
}
else
{
this._Kepala.prev = null;
}
}
else
if (index === this._Panjang -1)
{
NodeTanda = this._Ekor;
this._Ekor = NodeTanda.prev;
this._Ekor.next = null;
}
else
{
while(i++ < index)
{
NodeTanda = NodeTanda.next;
}
NodeTanda.prev.next = NodeTanda.next;
}
this._Panjang--;
return NodeTanda.data;
}
else
{
return null;
}
},
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().toString();
}
}
var List = new DoublyLinkedList();
List.Tambah("Tekhnik Informatika");
List.Tambah("Tekhnik Komputer");
List.Tambah("Komputerisasi Akuntansi");
List.Tambah("Computer Networking");
document.write("Isi LinkedList <br>");
document.write("--------------- <br>");
for (i=0; i<4; i++)
{
document.write(List.ItemList(i) + "<br>") ;
}
document.write("--------------- <br>");
alert("Isi LinkedList Awal =" + List.ItemList(0));
alert("ItemList 1 pada Linked List diBuang, yaitu = " +List.ItemList(1));
List.Buang(1);
document.write("<br>Isi LinkedList Terakhir <br>");
document.write("--------------- <br>");
for (i=0; i<4; i++)
{
document.write(List.ItemList(i) + "<br>") ;
}
document.write("--------------- <br>");
//-->
</script>
</body>
</html>
Senin, 08 Juni 2009
Blog Penulisan Kode LinkedList
?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>
?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>
Langganan:
Postingan (Atom)