Jumat, 24 Mei 2013

 DEFINISI LINKED LIST
Pengolahan data yang kita lakukan menggunakan komputer seringkali mirip dengan ilustrasi di atas, yang antara lain berupa penyimpanan data dan pengolahan lain dari sekelompok data yang telah terorganisir dalam sebuah urutan tertentu.  Salah satu cara untuk menyimpan sekumpulan data yang kita miliki adalah menggunakan larik. Telah kita bicarakan dalam Bab 1, keuntungan dan kerugian pemakaian larik untuk menyimpan sekelompok data yang banyaknya selalu berubah dan tidak diketahui dengan pasti kapan penambahan atau penghapusan akan berakhir.
  Single Linked List
Single linked list atau biasa disebut linked list terdiri dari elemen-elemen individu, dimana masing-masing dihubungkan dengan pointer tunggal. Masing-masing elemen terdiri dari dua bagian, yaitu sebuah data dan sebuah pointer yang disebut dengan pointer next.
 Representasi Simpul (Node)
Struktur node pada linked list merupakan suatu simpul(node) yang berisi pointer ke suatu data yang merupakan data dirinya sendiri.
 Alokasi Simpul
Ketika sebuah variabel dideklarasikan, terlebih dahulu harus diinisialisasi. Demikian juga dengan pengalokasian secara dinamis. Sehingga, fungsi untuk mengalokasikan sebuah node baru, fungsi allocate_node() menggunakan malloc() untuk mendapatkan memori aktual, yang akan menginisialisasi suatu field data. Next selalu diinisialisasi sebagai NULL.
Contoh Penggunaan Linked List Pada Java :
class Link{
public int iData;
public double dData;
public Link next;

public Link(int id, double dd){
iData = id;
dData = dd;
}

public void displayLink(){
System.out.print(“{” + iData + “, ” + dData + “} “);
}
}

 #CLASS LINKLIST

class LinkList{
private Link first;
public LinkList(){
first = null;
}

public boolean isEmpty(){
return (first==null);
}

public void insertFirst(int id, double dd){
Link newLink = new Link(id, dd);
newLink.next = first;
first = newLink;
}

public Link deleteFirst()
Link temp = first;
first = first.next;
return temp;
}

public void displayList(){
System.out.print(“List (first–>last): “);
Link current = first;
while(current != null){
current.displayLink();
current = current.next;
}
System.out.println(“”);
}
}

#CLASS LINKLISTAPP
class LinkListApp{
public static void main(String[] args){
LinkList theList = new LinkList();
theList.insertFirst(22, 2.99);
theList.insertFirst(44, 4.99);
theList.insertFirst(66, 6.99);
theList.insertFirst(88, 8.99);
theList.displayList();
while( !theList.isEmpty() ){
Link aLink = theList.deleteFirst();
System.out.print(“Deleted “);
aLink.displayLink();
System.out.println(“”);
}
theList.displayList();

}
}
Pengertian Linked list :
sekumpulan elemen bertipe sama, yang mempunyai keterurutan tertentu, yang setiap elemennya terdiri dari dua bagian struktur berupa rangkaian elemen saling berkait dimana setiap elemen dihubungkan elemen lain melalui pointer. Pointer adalah alamat elemen. Penggunaan pointer untuk mengacu elemen berakibat elemen-elemen bersebelahan secara logik walau tidak bersebelahan secara fisik di memori. Bentuk Umum :
Infotype àsebuah tipe terdefinisi yang menyimpan informasi sebuah elemen list Next àaddress dari elemen berikutnya (suksesor) Jika L adalah list, dan P adalah address, maka alamat elemen pertama list L dapat diacu dengan notasi :
Sebelum digunakan harus dideklarasikan terlebih dahulu :
Elemen yang diacu oleh P dapat dikonsultasi informasinya dengan notasi :
Beberapa Definisi :
List l adalah list kosong, jika First(L) = Nil
Elemen terakhir dikenali, dengan salah satu cara adalah karena Next(Last) = Nil
Nil adalah pengganti Null, perubahan ini dituliskan dengan #define Nil Null


Tidak ada komentar:

Posting Komentar