Minggu, 24 April 2011

Link List

Sebagai lanjutan dari artikel sebelumnya tentang cara menampilkan Linked List, kali ini Ane mau sedikit share tentang cara mengakses linked list.
Oke, pada contoh kali ini nama class yang berisi data adalah Kotak:
berikut ini adalah cara untuk menghapus angka setelah data yang di cari:
public Kotak hapusSetelah(int cari){
        Kotak point = awal;
        while(awal.angka != cari){//Proses selama angka awal tidak sama dengan angka yang dicari
            awal = awal.next;
        }
        return point;
    }
cara untuk menghapus data sebelum data yang dicari:
    public Kotak hapusSebelum(int cari){
        Kotak point = awal;
        while(awal.angka == cari){
            if(awal.next == null){//Proses ini mengeset nilai setelah angka yang di cari null, link list akan berhenti
                return null;
            }
        }
        return point;
    }
cara untuk menghapus salah satu data pada Link List:
Kotak point1 = awal;
        Kotak point2 = awal;
        while(point1.angka != hapus){
            if(point1.next == null){
                return null;
            }
            else{
                point2 = point1;
                point1 = point1.next;
            }
        }
        if(point1 == awal){//proses ini berlaku apabila angka yang keluar dari perulangan while adalah angka yang paling awal
            awal = awal.next;//data awal "loncat" ke data berikutnya sehingga data paling awal tidak dicetak
        }
        else{//proses ini berlaku apabila angka yang keluar dari perulangan while selain angka paling awal
            point2.next = point1.next;
        }
        return point2;
    }
cara untuk mencari data yang diinginkan:
Kotak point1 = awal;
        Kotak point2 = awal;
        while(point1.angka != cari){
            if(point1.next == null){
                return null;
            }
            else{
                point2 = point1;
                point1 = point1.next;
            }
        }
        if(point1 == awal){//apabila angka yang dicari berada paling awal
            point1.next = null;
        }
        else{//apabila angka yang dicari selain data awal
            awal = point2.next;//mengeset nilai awal menjadi data yang di cari
            point1.next = null;//mengeset nilai setelah data yang dicari adalah null, link list berhenti
        }
        return point1;
    }
cara untuk memasukkan data setelah angka yang ditunjuk:
public Kotak insertSetelah(int insert){
        Kotak masuk = new Kotak(7, 7.0, "tujuh");
        Kotak point1 = awal;
        Kotak point2 = awal;
        while(point2.angka != insert){
            if(point2.next == null){
                return null;
            }
            else{
                point2 = point1;
                point1 = point1.next;
            }
        }
        if(point2 == awal){//apabila data yang dimasukkan setelah data awal
            awal.next = masuk;
            masuk.next = point1;
        }
        else{//apabila data yang dimasukkan setelah data selain
            point2.next = masuk;
            masuk.next = point1;
        }
        return point1;
    }
cara untuk memasukkan data sebelum angka yang ditunjuk:
    public Kotak insertSebelum(int insert){
        Kotak masuk = new Kotak(6, 6.0, "enam");
        Kotak point1 = awal;
        Kotak point2 = awal;
        while(point1.angka != insert){
            if(point1.next == null){
                return null;
            }
            else{
                point2 = point1;
                point1 = point1.next;
            }
        }
        if(point1 == awal){
            point1 = null;
        }
        else{
            point2.next = masuk;
            masuk.next = point1;
        }
        return point1;
    }

Jangan lupa bahwa method di atas diletakkan di class KotakList. Untuk lebih jelasnya lihat artikel sebelumnya.
Semoga artikel ini bermanfaat. Mohon maap apabila ada kesalahan :)

Pada artikel mendatang akan dijelaskan tentang penerapan link list.Check it out!!!

Rabu, 06 April 2011

5 Istilah

Internet itu interconnected networking (network yang dapat saling terkoneksi). Dari namanya saja kita bisa mendefinisikan bahwa internet adalah koneksi network yang sangat luas, bisa mencapai seluruh dunia yang dapat terkoneksi. Karena network yang luas tersebut saling terkoneksi, maka diperlukan suatu jaringan. Jaringan komputer di bagi menjadi tiga berdasarkan luas jangkauannya yaitu 1. LAN (Local Area Network) 2. (Metropolitam Area Network) 3. (Wide Area Network). contoh dari internet adalah e-book, e-mail, e-commerce semuanya adalah contoh dari internet dimana setiap layanan juga menyediakan informasi yang berbeda. Karena di dalam internet ada proses pertukaran informasi, pastinya ada pihak yang menyediakan informasi dan ada juga pihak yang menerima informasi. Pihak yang menyediakan informasi disebut juga dengan server. Komputer server dilengkapi dengan spek yang besar karena server ini harus melayani berbagai informasi yang dibuthkan oleh pihak - pihak yang membutuhkan informasi seperti sistem operasi khusus, RAM yang besar, dll.  Contoh HTTP server dan FTP server. Pihak yang menerima informasi tersebut dapat juga disebut dengan client contoh client TFTP dan client FTP. Untuk mendapatkan informasi yang dibutuhkan, pastinya dibutuhkan suatu alat yang dapat digunakan untuk menemukan informasi yang dibutuhkan. alat ini disebut juga dengan search engine (alat pencari). Alat yang digunakan ini bukan dalam bentuk hardware, namun alat ini dalam bentuk software.Software inilah yang nantinya menjadi alat untuk mencari informasi yang kita inginkan. Contoh dari search engine adalah www.google.com dan www.ask.com. Nah, dalam pengiriman dan penerimaan suatu informasi dibutuhkan suatu jaringan.Jaringan juga mempunyai metode - metode tertentu untuk bertukar informasi yang dapat disebut juga dengan routing. Routing dapat digunakan untuk meneruskan jaringan satu dengan jaringan lainnya. Routing juga dapat digunakan untuk menggabungkan jaringan satu dengan jaringan lainnya sehingga data dapat diteruskan dari jaringan yang satu ke jaringan lainnya. Alat yang digunakan untuk routing disebut juga dengan router. Contohnya adalah Microtik routerOS dan cisco router.

Selasa, 05 April 2011

Menampilkan Link List

"Jadi Linked List adalah blabalabla....". Beginilah kata dosen struktur data pas nerangin tentang linked list. Alhasilbanyak temen - temen yang gak ngerti...
tapi ada juga yang ngerti, selamat untuk temen - temen yang udah ngerti d^_^b
untuk ngebantu temen - temen yang belum ngerti, ane coba jelasin linked list versi ane sendiri. Sebelumnya, bersihkan otak kalian yang beranggapan bahwa linked list adalah suatu metode yang di sediakan oleh java. linked list adalah methode yang kita buat sendiri dengan gambaran sebagai berikut:




berikut ini cara menampilkan linked list:
public class Kotak{
int angka;
String nomer;
Link next;//attribut yang mencakup seluruh attribut dan method yang berada dalam class Link

public Kotak(int angka, String nomer){
this.angka = angka;
this.nomer = nomer;
}

public void tampilLink(){
System.out.print(angka + " " + nomer + " ");
}
}

public class LinkList{
Link awal;//attribut pada LinkList yang mencakup semua attribut dan methodnya
public LinkList(){
awal = null;
}
public void tambahAwal(int angka, String nomer){//fungsi untuk memasukkan data
Link kotak = new Link(angka, nomer);
kotak.next = awal;//mindah inputan pertama jadi inputan berikunya
awal = kotak;//masukin data ke kotak kosong pertama
}
public void KotakList(){
System.out.println("Data: ");
while(awal != null){
awal.tampilKotak();
awal = awal.next;
}
}
}

public classs Main{
public static void main(String[] args){
KotakList test = new KotakList();
test.tambahAwal(1, "satu");
test.tambahAwal(2, "dua");
test.tambahAwal(3, "tiga");
test.tampilKotakList();
}
}

Sebenernya nampilin Linked List cuma pake script di atas, untuk mengakses Lingked List akan ane bahas di artikel ane berikutnya.