0% menganggap dokumen ini bermanfaat (0 suara)
25 tayangan15 halaman

Linked List

Linked List adalah struktur data yang terdiri dari node-node yang terhubung secara linier melalui pointer, dengan istilah head dan tail untuk node pertama dan terakhir. Terdapat tiga jenis linked list: singly linked list, doubly linked list, dan circular linked list, masing-masing dengan karakteristik dan operasi yang berbeda. Kelebihan linked list termasuk fleksibilitas dalam penambahan dan penghapusan elemen, meskipun memerlukan lebih banyak memori dan akses elemen yang lebih lambat dibandingkan array.

Diunggah oleh

riskaazzuhra
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PPTX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
25 tayangan15 halaman

Linked List

Linked List adalah struktur data yang terdiri dari node-node yang terhubung secara linier melalui pointer, dengan istilah head dan tail untuk node pertama dan terakhir. Terdapat tiga jenis linked list: singly linked list, doubly linked list, dan circular linked list, masing-masing dengan karakteristik dan operasi yang berbeda. Kelebihan linked list termasuk fleksibilitas dalam penambahan dan penghapusan elemen, meskipun memerlukan lebih banyak memori dan akses elemen yang lebih lambat dibandingkan array.

Diunggah oleh

riskaazzuhra
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PPTX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 15

LINKED LIST

KELOMPOK 5
Anggota Kelompok

RIZKA AZZUHRA INTAN FADILLAH MUNIATUN MUNIRA NURDIANA


(23105111084) (23105111127) (23105111047) (23105111143)
APA YANG DIMAKSUD DENGAN
LINKED LIST?
Linked List atau daftar tertaut adalah struktur berurutan yang terdiri dari urutan
item dalam urutan linier yang dihubungkan satu sama lain. Karenanya, Anda harus
mengakses data secara berurutan. Linked menyediakan representasi sederhana
dan fleksibel dari set dinamis. Tipe linked list ini tidak bisa mencari data dengan
sitem acak.
Jadi linked Lists menghubungkan setiap Data atau Node dari masing-masing Linked
List untuk terhubung melalui Pointer yang mengarah ke data selanjutnya. Biasanya
di dalam suatu linked list, terdapat istilah head dan tail.
• Head adalah elemen yang berada pada posisi pertama dalam suatu linked list.
• Tail adalah elemen yang berada pada posisi terakhir dalam suatu linked list.
JENIS LINKED-LIST

Berikut ini adalah berbagai jenis linked list


1.Singly linked list - Traversal item hanya dapat dilakukan ke arah depan.
2. Doubly linked list - Traversal item dapat dilakukan di kedua arah maju dan mundur.
Node terdiri dari pointer tambahan yang dikenal sebagai prev, menunjuk ke node
sebelumnya.
3. Circular linked lists – Linked List ini, dimana penunjuk sebelumnya dari kepala
menunjukkan ekor dan penunjuk berikutnya dari ekor menunjuk ke kepala
PENGOPERASIAN
LINKED LIST
Pengoperasian Linked list
1. Cari : Temukan elemen pertama dengan kunci ke dalam daftar tertaut yang diberikan oleh
pencarian linear sederhana dan mengembalikan pointer ke elemen ini
2. Sisipkan: Sisipkan kunci ke daftar tertaut. Penyisipan dapat dilakukan dengan 3 cara berbeda;
masukkan di awal daftar, masukkan di akhir daftar dan masukkan di tengah daftar.
3. Hapus: Menghapus elemen x dari daftar tertaut yang diberikan. Anda tidak dapat menghapus
simpul dengan satu langkah. Penghapusan dapat dilakukan dengan 3 cara berbeda; hapus dari
awal daftar,hapus dari akhir daftar dan hapus dari tengah daftar.
B. Macam-macam Linked List
Terdapat tiga macam Linked List yaitu, sebagai berikut:
a. Simple Linked List
Single Linked List merupakan suatu linked list yang hanya memiliki satu variabel
pointer saja. Dimana pointer tersebut menunjuk ke node selanjutnya.Biasanya
field pada tail menunjukke NULL.
Representasi sebuah linked list dapat digambarkan melalui gambar dibawah ini:
operasi pada singgle linked list
1. Insert = Istilah Insert berarti menambahkan sebuahsimpul baru kedalam suatu
linked list.
2. Konstruktor = Fungsi ini membuat sebuah linked list yang baru dan masih
kosong.
3. IsEmpty = Fungsi ini menentukan apakah linked list kosong atau tidak.
4. Find First = Fungsi ini mencari elemen pertama dari linked list
5. Find Next = Fungsi ini mencari elemen sesudah elemen yang ditunjuk now.
6.Retrieve =Fungsi inimengambil elemen yangditunjuk oleh now. Elemen tersebut
lalu dikembalikan oleh fungsi.
7.Update = Fungsi ini mengubah elemen yang ditunjuk olehnow dengan isi
darisesuatu.
8.Delete Now = Fungsi ini menghapus elemen yang ditunjukoleh now. Jika yang
dihapus adalah elemen pertama dari linkedlist (head), head akan berpindah
keelemen berikut.
rangkaian single linked list diawali dengan sebuah head untuk menyimpan alamat awal
dan di akhiri dengan node yang mengarah pointer ke null. Single Linked List hanya
memiliki satu arah dan tidak memiliki dua arah atau bolak balik, dua arah tersebut
disebut dengan double linked list.
Pada Implementasinya, Single Linked List terdapat dua variasi yaitu circular dan non
circular. Berikut adalah ilustrasi single linked list Non-Circular.

sedangkan untuk single linked list Circular nya adalah sebagai berikut:
b.Doubly Linked List
Double Linked List merupakan Doubly linked list yang memilki pointer penunjuk 2 arah,
yakni ke arah node sebelum (previos/prev) dan node sesudah (next).
Representasi sebuah doubly linked list dapat dilihat pada gambar berikut ini.

di dalam sebuah linked list, ada 2 pointer yang menjadi penunjukutama, yakni
pointer HEAD yang menunjuk pada node pertama didalam linked list itu sendiri dan
pointer TAIL yang menunjuk pada node paling akhir di dalam linked list. Sebuah
linked list dikatakan kosong apabila isi pointer head adalah NULL. Selain itu, nilai
pointer prev dari HEAD selalu NULL, karena merupakan data pertama. Begitu pula
dengan pointer next dari TAIL yang selalu bernilai NULL sebagai penanda data
terakhir.
.
Beberapa operasi yang biasanya ada di dalam sebuah doubly linked list pada dasarnya
sama dengan yang ada di dalam single linked list, yakni:
1. Push
Push merupakan sebuah operasi insert dimana di dalam linked list terdapat 2
kemungkinan insert, yaitu insert melalui depan (pushDepan) ataupun belakang
(pushBelakang). Operasi push depan berarti data yang paling baru dimasukkan akan
berada di depan data lainnya, dan sebaliknya push belakang berarti data yang paling
baru akan berada di belakang data lainnya.

Representasinya adalah sebagai berikut:


1) pushDepan: 5, 3, 7, 9 maka hasilnya adalah berturut-turut: 9, 7, 3, 5
2) pushBelakang: 5, 3, 7, 9 maka hasilnya adalah 5, 3, 7, 9

2. Pop
Pop, kebalikan dari push, merupakan operasi delete, dimana di dalam linked list memiliki
2 kemungkinan delete, yaitu melalui depan (popDepan) dan melalui belakang
(popBelakang). PopDepan berarti data yang akan dihapus adalah data paling depan, dan
popBelakang berarti data yang akan dihapus adalah data paling belakang (akhir).

.
C.Circular Linked list

Circular Linked List merupakan suatu linked list dimana tail (nodeterakhir) menunjukke head (node
pertama).
Jadi tidak ada pointer yang menunjuk NULL. Ada 2 jenis Circular Linked List, yaitu :

a. Circular Single Linked List contoh :


Dalam Circular Single Linked List, penunjuk berikutnya dari simpul terakhir menunjuk ke simpul pertama.

b. Circular Double Linked List contoh :


Dalam Circular Double Linked List, penunjuk berikutnya dari simpul terakhir menunjuk ke simpul
pertama dan penunjuk sebelumnya dari simpul pertama menunjuk ke simpul terakhir membuat
lingkaran di kedua arah.
Sesuai ilustrasi di atas, berikut ini adalah poin-poin penting yang harus diperhatikan.

1. Pada linked terakhir berikutnya menunjuk ke tautan pertama


dari daftar dalam kedua kasus daftar tertaut tunggal maupun ganda.
2. Pada linked pertama sebelumnya menunjuk ke daftar terakhir dalam kasus daftar tertaut
ganda.

a) Operasi Dasar
Berikut ini adalah operasi penting yang didukung oleh daftar melingkar.
1) insert - Menyisipkan elemen di awal daftar.
2) delete - Menghapus elemen dari awal daftar.
3) Display - tampilan Menampilkan daftar.

(b) Operasi Penyisipan


Kode berikut menunjukkan operasi penyisipan dalam daftar tertaut melingkar berdasarkan
daftar tertaut tunggal.
Linked List memiliki kelebihan dan
kekurangan sebagai berikut :
Kelebihan :

• Penambahan elemen tidak terbatas


• Memungkinkan untuk dihapus

Kekurangan :

• Hanya bisa diakses secara sekuensial


• Memerlukan memori dalam jumlah yang besar, untuk menyimpan data yang
besar juga.
KESIMPULAN
Linked list adalah struktur data yang terdiri dari sejumlah simpul-simpul yang terhubung satu sama lain melalui tautan. Setiap
simpul terdiri dari dua bagian: data dan tautan ke simpul berikutnya dalam urutan. Kesimpulan dari penggunaan linked list
termasuk:

1. Fleksibilitas : Linked list memiliki ukuran yang dinamis, sehingga mudah untuk menambahkan atau menghapus elemen di
tengah-tengah list tanpa mengganggu elemen-elemen lainnya.

2.Penggunaan Memori : Linked list menggunakan lebih banyak memori daripada array untuk menyimpan elemen karena setiap
elemen memerlukan overhead tambahan untuk tautan. Namun, ini juga memungkinkan penggunaan memori yang lebih fleksibel
dibandingkan dengan array.

3. Akses Elemen : Akses ke elemen dalam linked list bisa menjadi lebih lambat daripada array karena Anda harus menelusuri list
dari awal hingga elemen yang diinginkan. Namun, akses ke elemen di ujung list bisa dilakukan dengan cepat.

4. Penyisipan dan Penghapusan : Operasi penyisipan dan penghapusan dalam linked list bisa dilakukan dengan cepat, terutama
jika Anda memiliki referensi langsung ke simpul yang akan diubah. Ini adalah salah satu keuntungan utama linked list, terutama
jika Anda sering memerlukan operasi semacam itu.

5. Implementasi Struktur Data Lain : Linked list digunakan sebagai dasar untuk implementasi struktur data lainnya, seperti stack,
queue, dan double linked list.

Dengan memahami karakteristik dan penggunaan linked list, Anda dapat memilih apakah struktur data ini cocok untuk kebutuhan
spesifik aplikasi Anda.
THANKS YOU

Anda mungkin juga menyukai