Showing posts with label Link List. Show all posts
Showing posts with label Link List. Show all posts

Thursday, November 12, 2015

Sorting Menggunakan Order Link List Java

Pada postingan saya kali ini, saya akan mencoba membuat programm sorting sederhana dengan menggunakan bahasa pemrograman java. Bagi anda yang belum tahu apa itu link list bisa dilihat di sini.

Oke, langsung aja disedot gan source code nya :
class node{
    int data;
    node next,prev; //untuk berikut dan sebelum
}

public class Linklist {
static node head,tail;
static void insert(int x){
        node new_node=new node();
        new_node.data=x;
        if(head == null && tail == null){ // jika masih kosong
            head = tail=new_node;
        }else {
            tail.next=new_node;
            new_node.prev=tail;
            tail=new_node;
        }
    }
static void view()
{
    node x =new node();
        while(x!=null)
        {
            x=head;
            while(x!=null)
            {
                node next=x.next;
                node doublenext=x.next.next;
                if (x.data>next.data) {
                    next.prev=x.next=null;
                    next.next=x;
                    x.prev=next;
                    x.next=doublenext;
                    doublenext.prev=x;
                }
                x=x.next;
            }
        }
        x=head;
        while(x != null){ //saat node masih ada
            System.out.print(x.data + " - ");
            x = x.next;
        }
        System.out.println();
}
    public static void main(String[] args) {
        insert(5);
        insert(3);
        insert(1);
        System.out.println();
        view();
    }
}

Wednesday, September 9, 2015

Konsep Dasar Algoritma Link List

Pengertian Link List

Sudah pernah dengar tentang Link List ? Bagi yang belum tahu apa itu link list, secara pengertian link list merupakan salah satu bentuk struktur data yang berisi kumpulan data (node) yang tersusun secara continue dan saling sambung menyambung antara data yang satu dengan data yang lainnya.

Link list bisa juga disebut dengan variabel berantai, dan setiap node pada link list menempati alokasi memori secara dinamis.

Bedasarkan tipe link list dibedakan menjadi 3 jenis link list:

1. Single Link List
Single link list adalah link list yang hanya
menggunakan satu variabel pointer saja (maksudnya arah panahnya hanya satu arah saja).



2. Double Link List
Double link list adalah sekumpulan elemen-elemen yang saling berhubungan yang dihubungkan oleh dua pointer baik depan atau belakang (next and previous).


3. Circular Link List
Circular link list adalah kumpulan dari elemen elemen yang saling berhubungan antara yang saru dan yang lainnya, termasuk head dan tail pada link list ini saling berhuungan.

Konsep Kerja Link List

Pada intinya konsep kerja link list menurut saya agak mirip dengan array gan,  jadi pada mulanya adalah sebuah data yang kosong yang pada mulanya adalah " head=tail ". Biar lebih jelas saya sertakan gambar berikut:
Jadi pada saat link list belum terisi maka posisi head = posisi tail, bisa disebut juga belum memiliki ujung.

Kemudian pada saat data tersebut diberi nilai maka posisi tail akan bergeser, untuk lebih jelasnya saya sertakan gambar berikut:
head = tail
new_tail = tail
Begitu pula proses selanjutnya berlangsung.

Apabila agan masih belum jelas dengan penjelasan saya di atas, berikut saya sertakan video yang menjadi referensi saya:


Terima kasih atas kunjungannya, semoga atikel yang saya tulis dapat bermanfaat dan mudah dipahami.