Nama : Dennis
NIM : 2301903733
Mata Kuliah : Data Structure
Materi : Introduction to Data Structure
Kesimpulan materi hari ini : Mengenai linked list
Linked list atau senarai berantai adalah struktur
data yang terdiri dari urutan record data dimana setiap record memiliki field
yang menyimpan alamat atau referensi dari record selanjutnya. Elemen data yang
dihubungkan dengan link pada linked list disebut Node. Biasanya didalam 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
Ada beberapa macam linked list, yaitu :
·
Single 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 menunjuk ke NULL.
Pembuatan Single Linked List dapat
menggunakan 2 metode:
ü
LIFO (Last In First Out), aplikasinya : stack (tumpukan)
ü
FIFO (First In First Out), aplikasinya : queue (antrean)
·
Double Linked List
Salah satu kelemahan single linked list
adalah pointer (penunjuk) hanya dapat bergerak satu arah saja, maju/mundur,
atau kanan/kiri sehingga pencarian data pada single linked list hanya dapat
bergerak dalam satu arah saja. Untuk mengatasi kelemahan tersebut, dapat
menggunakan metode double linked list.
Double linked list merupakan suatu linked
list yang memiliki dua variabel pointer yaitu pointer yang menunjuk ke node
selanjutnya dan pointer yang menunjuk ke node sebelumnya. Setiap head dan
tailnya juga menunjuk ke NULL.
·
Circular Linked List
Circular Linked List merupakan suatu linked
list dimana tail (node terakhir) menunjuk ke head (node pertama). Jadi tidak
ada pointer yang menunjuk NULL. Ada 2 jenis circular linked list, yaitu :
ü Circular
Single Linked List
ü Circular
Double Linked List
·
Multiple Linked List
Multiple Linked List merupakan suatu linked
list yang memiliki lebih dar 2 buat variabel pointer.
Operasi-Operasi yang ada pada linked list :
·
Insert
Istilah Insert berarti menambahkan sebuah
simpul baru ke dalam suatu linked list.
·
IsEmpty
Fungsi ini menentukan apakah linked list
kosong atau tidak.
·
Find First
Fungsi ini mencari elemen pertama dari
linked list
·
Find Next
Fungsi ini mencari elemen sesudah elemen
yang ditunjuk now
·
Retrieve
Fungsi ini mengambil elemen yang ditunjuk
oleh now. Elemen tersebut lalu dikembalikan oleh fungsi.
·
Update
Fungsi ini mengubah elemen yang ditunjuk
oleh now dengan isi dari sesuatu
·
Delete Now
Fungsi ini menghapus elemen yang ditunjuk
oleh now. Jika yang dihapus adalah elemen pertama dari linked list (head), head
akan berpindah ke elemen berikut.
·
Delete Head
Fungsi ini menghapus elemen yang ditunjuk
head. Head berpindah ke elemen sesudahnya.
·
Clear
Fungsi ini menghapus linked list yang sudah
ada. Fungsi ini wajib dilakukan bila anda ingin mengakhiri program yang
menggunakan linked list. Jika anda melakukannya, data-data yang dialokasikan ke
memori pada program sebelumnya akan tetap tertinggal di dalam memori.
Dalam materi datstruct ada juga yang Namanya stack dan
queque.
1.
Stack atau tumpukan dapat diartikan
sebagai suatu kumpulan data yang seolah-olah terlihat seperti ada data yang diletakkan
di atas data yang lain. Kaidah utama dalam konsep stack adalah LIFO yang
merupakan singkatan dari Last In First Out, artinya adalah data yang terakhir
kali dimasukkan atau disimpan, maka data tersebut adalah yang pertama kali akan
diakses atau dikeluarkan.
Sebuah struktur data dari sebuah stack
setidaknya harus mengandung dua buah variabel, misalnya variabel top yang akan
berguna sebagai penanda bagian atas tumpukan dan array data dari yang akan
menyimpan data-data yang dimasukkan ke dalam stack tersebut.
Operasi-operasi dasar dalam stack ada 2
yaitu operasi push dan pop:
ü
Operasi push, berfungsi untuk memasukkan
sebuah nilai atau data ke dalam stack. Sebelum sebuah nilai atau data
dimasukkan ke dalamstack, prosedur ini terlebih dahulu akan menaikkan posisi
top satu level ke atas.
ü
Operasi pop, berfungsi untuk mengeluarkan
atau menghapus nilai terakhir (yang berada pada posisi paling atas) dari stack,
dengan cara menurunkan nilai top satu level ke bawah.
2.
Queue atau antrian merupakan struktur
data linear dimana penambahan komponen dilakukan disatu ujung, sementara pengurangan
dilakukan diujung lain. Kaidah utama dalam konsep queue adalah FIFO yang
merupakan singkatan dari First In First Out, artinya adalah data yang pertama
kali dimasukkan atau disimpan, maka data tersebut adalah yang pertama kali akan
diakses atau dikeluarkan.
Sebuah queue di dalam program komputer
dideklarasikan sebagai sebuah tipe bentukan baru. Sebuah struktur data dari
sebuah queue setidaknya harus mengandung dua tiga variabel, yakni variabel head
yang akan berguna sebagai penanda bagian depan antrian, variabeltail yang akan
berguna sebagai penanda bagian belakang antrian danarray dari yang akan
menyimpan data-data yang dimasukkan ke dalam queue tersebut.
Operasi-operasi dasar dalam queque ada 2
yaitu operasi enqueue dan dequeue:
ü
Operasi enqueue, digunakan untuk
memasukkan sebuah data atau nilai ke dalam queue. Pada proses enqueue, tail
-lah yang berjalan seiring masuknya data baru ke dalam antrian, sedangkan head
akan tetap pada posisi pertama.
ü
Operasi dequeue, digunakan untuk
menghapuskan sebuah data atau nilai yang paling awal masuk ke dalam queue.
Operasi ini menaikkan nilai head satu level.
Komentar
Posting Komentar