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