Struktur Data Materi III LINKED LIST BERKEPALA DAN
Struktur Data Materi III LINKED LIST BERKEPALA DAN BEREKOR v Linked list berkepala dan berekor (headed and tail)adalah Linked list yang ditambahkan dua node ”dummy” masing-masing kepala dan ekor tetapi secara logik tidak termasuk anggota linked list. INFO Kepala INFO Elemen INFO Ekor v Info Kepala diberi nilai yang pasti lebih kecil dari semua kemungkinan nilai yang ada v Info Ekor diberi nilai yang pasti lebih besar dari semua kemungkinan nilai yang ada
Struktur Data Materi III Contoh linked list yang memiliki 4 elemen list (node): -1 15 10 Kepala v 20 25 Elemen List 101 Ekor Linked List Kosong Jika linked list hanya terdiri dari kepala dan ekor saja, karena yang dihitung sebagai node adalah list yang berada diantara kepala dan ekor. Contoh: -1 Kepala 101 Ekor v Keuntungan: Penyisipan dan penghapusan selalu terjadi ditengah. !
Struktur Data Materi III a. Sisip Node Bantu -1 10 20 30 Kepala 101 Ekor Sisipnode(25) 25 NB Hasil : -1 Kepala 10 20 25 30 101 Ekor
Struktur Data v Fungsi Menyisipkan Node (bahasa C). void sisiptengah(tipeinfo IB) { tipeptr NB, bantu; NB=(node *) malloc(sizeof(node)); NB->info=IB; NB->next=NULL; bantu=kepala; while(bantu->next->info<IB) bantu=bantu->next; NB->next=bantu->next; bantu->next=NB; } Materi III
Struktur Data Materi III b. Hapus Node Hapus Bantu -1 10 20 30 40 Kepala Ekor Hapusnode(30) Hasil : -1 Kepala 101 10 20 40 101 Ekor
Struktur Data Materi III c. Cetak Isi Linked List Bantu -1 10 Kepala Hasil : 10 20 30 40 101 Ekor
Struktur Data v Fungsi Mencetak dari Depan (bahasa C). void cetaklist() { tipeptr bantu; bantu=kepala->next; while (bantu!=Ekor) { printf("%d ", bantu->info); bantu=bantu->next; } } Materi III
- Slides: 7