SlideShare a Scribd company logo
Linked List
Sherly Christina, S.Kom., M.Kom
1
List Linier Tunggal
 Sebuah list dimana elemennya hanya
menyimpan pointer/informasi elemen
setelahnya
2
List Linier Ganda
 Disebut juga two way chain
List Linier Ganda
 Sebuah List yang elemennya menyimpan informasi
elemen sebelumnya dan informasi elemen setelahnya
Sirkuler Link list Tunggal
Sirkuler Link list Ganda
Pendefinisian List
Type
Data_type = …;
Key_type = …;
nodePtr = ^node;
node = record
key : key_type;
data : data_type;
next : nodePtr;
end;
Linked_list = record
First : nodePtr;
end;
7
Operasi Dasar
1. Penciptaan dan penghancuran simpul (buildNode dan
destroyNode)
2. Inisialisasi dan fungsi pemeriksaan linked list kosong
(initL dan esEmptyL)
3. Penyisipan simpul ke linked list
· Penyisipan sebagai simpul pertama (insertFirst)
· Penyisipan setelah simpul tertentu (insertAfter)
· Penyisipan sebagai simpul terakhir (insertLast)
· Penyisipan sebelum simpul tertentu (insertBefore)
8
Operasi Dasar
4. Penghapusan variable dinamis (simpul suatu
linked list)
· Penghapusan simpul pertama (deleteFirst)
· Penghapusan simpul terakhir (deleteLast)
· Penghapusan setelah simpul tertentu
(deleteAfter)
· Penghapusan simpul tertentu (deleteNode
dan deleteKNode)
5.Transversal atau penelusuran seluruh simpul
6. Pencarian simpul tertentu (searchNode)9
1. Penciptaan dan Penghancuran simpul
10
2. Inisialisasi dan Memeriksa Linked List
Kosong
 Procedure ini
menghasilkan linked
list kosong ditunjuk
L.
 Function untuk
memeriksa linked list
kosong
11
3. Penyisipan Simpul Pertama
 menyisipkan
elemen baru
(berupa alamat)
sebagai elemen
pertama linked list.
12
3. Penyisipan Simpul Pertama
 Langkah-langkah agar
rantai linked list tidak
terputus:
1. Pointer next elemen
baru (A) menunjuk
dulu elemen pertama
dari linked list
2. L.First menunjuk ke
elemen baru
13
4. Penyisipan setelah simpul tertentu
 menyisipkan elemen
baru (berupa
alamatnya) sebagai
elemen setelah
elemen tertentu di
linked list.
14
4. Penyisipan setelah simpul tertentu
 Langkah-langkah agar
rantai linked list tidak
terputus:
1. Pointer next elemen
baru (A) menunjuk dulu
elemen setelah
(E)elemen tertentu (D)
2. Pointer next elemen
sebelumnya (D)
menunjuk ke elemen
baru (A)
15
5. Penyisipan sebagai simpul terakhir
 Menyisipkan elemen baru
(A) (berupa alamatnya)
sehingga elemen tersebut
akan menjadi elemen
terakhir linked list.
 Untuk penyisipan sebagai
elemen terakhir
diperlukan alamat elemen
terakhir (last) (E). Untuk
menemukan last
diperlukan penelusuran
sehingga terpenuhi
last^.next = nil
16
5. Penyisipan sebagai simpul terakhir
17
 Langkah-langkah agar rantai linked list tidak
terputus:
1.Telusuri linked list sehingga mendapatkan elemen last
2. Lakukan insertaAfter setelah elemen last
6. Penghapusan simpul pertama
 Operasi ini akan menghapus
elemen pertama linked list.
 Langkah-langkah agar rantai
linked list tidak terputus:
1. Element First dicatat di
suatu elemen
2. L.First mencatat elemen
selanjutnya setelah L.First
18
6. Penghapusan simpul pertama
 Prosedur Dispose akan
mengembalikan elemen
dinamis ke memori
sehingga dapat
digunakan kembali.
19
7. Penghapusan simpul setelah simpul
tertentu
 Menghapus elemen
setelah elemen tertentu.
 Langkah-langkah agar
rantai linked list tidak
terputus:
1. Elemen tertentu yang
dihapus di-cut
2. Sambungkan ke elemen
berikutnya
20
7. Penghapusan simpul setelah simpul
tertentu
21
8. Penghapusan simpul terakhir
 Menghapus elemen
pertama linked list.
 Sebelum memanggil
prosedur ini, harus
dipastikan linked list
tidak kosong.
22
8. Penghapusan simpul terakhir
Procedure deleteLast(Var L :
linked_list);
Var
P, Last, precLast : nodePtr;
Begin
If (L.First <> nil) then
Begin
Last := L.First
precLast := Nil;
while (Last^.next <> nil) then
Begin
precLast := Last;
Last := Last^.next;
End;
P := Last;
If (precLast = nil) then
L.First := nil
Else
precLast^.next := nil;
Dispose(P);
End;
End;
23
Penghapusan simpul tertentu
 Menghapus elemen tertentu.Terdapat dua versi penghapusan ini,
yaitu :
 Elemen tertentu didasarkan pada alamat elemen
 Elemen tertentu didasarkan pada key
 Untuk penghapusan elemen harus terlebih dulu diketahui elemen
sebelum elemen tertentu tersebut dengan pencarian yang sekaligus
mencatat elemen sebelumnya.
 Langkah-langkah agar rantai linked list tidak terputus:
1. Menelusuri apakah terdapat elemen tertentu tersebut sekaligus
mencatat elemen sebelumnya
2. Setelah ditemukan maka hapus elemen tertentu dengan
· Mengisolasi elemen tertentu
· Menghubungkan elemen sebelumnya dengan elemen setelah
elemen tertentu
· Dispose elemen tertentu.
24
Penelusuran seluruh simpul
 Linked list berisi sekumpulan elemen.
 Dalam beberapa operasi sering diperlukan
pemrosesan semua elemen linked list.
1. Init adalah prosedur untuk persiapan pemrosesan
2.Visit (P) adalah prosedur pemrosesan simpul yang saat
itu (dikunjungi atau ditunjuk)
3.Terminate adalah prosedur pemrosesan akhir setelah
penelusuran
25
Penelusuran dengan While.. Do...
Procedure ListTraversal(L : linked_list);
Var
P : nodePtr;
Begin
Init;
P := L.First;
While (P <> nil ) do
Begin
Visit (P);
P := P^.next;
End;
Terminate;
End;
26
Penelusuran dengan Repeat... Until...
Procedure ListTraversal (L :linked list);
Var
P : nodePtr;
Begin
If (L.First = nil) then
Message_linked list_Kosong;
Else
Begin
Init;
P := L.First;
Repeat
Proses(P);
P := P^.next;
Until (P = nil);
Terminasi;
End;
End;
27
Pencarian simpul
 Pencarian pada linked list hanya dapat dilakukan
secara sekuen (berturutan).
 Pencarian merupakan modifikasi dari penelurusan
dengan berhenti pada simpul tertentu.
28
Pencarian simpul
Function ListSearch(L : linked_list, k : key_type, var P : nodePtr) : Boolean;
Var
Found : Boolean;
Begin
P := L.First;
Found := false;
While (P <> nil) and (not Found) do
Begin
If (P^.key = key) then Found := true
else
P := P^.next;
End;
ListSearch := Found;
End;
29
Operasi Terhadap Linked list
1. Penghapusan linked list
2. Inverse
3. Penyambungan
4. Panjang linked list
Penghapusan linked list
 Merupakan modifikasi
penelusuran linked list
dengan mengisolasi lebih
dulu elemen yang akan
dihapus.
Inverse linked list
 Membalik linked list
sehingga yang semula
elemen terakhir menjadi
elemen pertama dan
sebaliknya.
Penyambungan dua linked list
 Menyambungkan dua link list sehingga L3 akan berisi L1
disambung L2.
Panjang linked list
 Fungsi ini mengirim jumlah elemen di linked list.
35

More Related Content

What's hot

Matematika Diskrit kombinatorial
Matematika Diskrit  kombinatorialMatematika Diskrit  kombinatorial
Matematika Diskrit kombinatorial
Siti Khotijah
 
Graf Pohon
Graf PohonGraf Pohon
Graf Pohon
Septi Ratnasari
 
Materi 3 Finite State Automata
Materi 3   Finite State AutomataMateri 3   Finite State Automata
Materi 3 Finite State Automata
ahmad haidaroh
 
Fungsi (function)
Fungsi (function)Fungsi (function)
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)Nabil Muhammad Firdaus
 
CFG dan PARSING - P 5 - Teknik Kompilasi
CFG dan PARSING - P 5 - Teknik KompilasiCFG dan PARSING - P 5 - Teknik Kompilasi
CFG dan PARSING - P 5 - Teknik Kompilasi
ahmad haidaroh
 
pewarnaan graf
pewarnaan grafpewarnaan graf
pewarnaan graf
rukmono budi utomo
 
Newton gregory mundur
Newton gregory mundurNewton gregory mundur
Newton gregory mundur
Adi Moel
 
Aljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskritAljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskrit
riyana fairuz kholisa
 
Linked List dalam Struktur Data
Linked List dalam Struktur DataLinked List dalam Struktur Data
Linked List dalam Struktur Data
Fajar Sany
 
Algoritma dan Struktur Data - Pohon Biner
Algoritma dan Struktur Data - Pohon BinerAlgoritma dan Struktur Data - Pohon Biner
Algoritma dan Struktur Data - Pohon Biner
KuliahKita
 
4.matriks dan relasi
4.matriks dan relasi4.matriks dan relasi
4.matriks dan relasi
Nada Try Pasha Julian
 
Algoritma penjadwalan proses
Algoritma penjadwalan prosesAlgoritma penjadwalan proses
Algoritma penjadwalan proses
Rakhmi Khalida, M.M.S.I
 
Modul Pemrograman Bahasa Assembly
Modul Pemrograman Bahasa AssemblyModul Pemrograman Bahasa Assembly
Modul Pemrograman Bahasa Assembly
Universitas Merdeka Pasuruan
 
6. analisis semantik
6. analisis semantik6. analisis semantik
6. analisis semantikyuster92
 
2. galat
2. galat2. galat
5. Doubly Linked List (Struktur Data)
5. Doubly Linked List (Struktur Data)5. Doubly Linked List (Struktur Data)
5. Doubly Linked List (Struktur Data)
Kelinci Coklat
 
Matematika Diskrit matriks relasi-dan_fungsi
Matematika Diskrit  matriks relasi-dan_fungsiMatematika Diskrit  matriks relasi-dan_fungsi
Matematika Diskrit matriks relasi-dan_fungsi
Siti Khotijah
 
Makalah Algoritma kruskal
Makalah Algoritma kruskalMakalah Algoritma kruskal
Makalah Algoritma kruskal
zaenal mustofa
 

What's hot (20)

Matematika Diskrit kombinatorial
Matematika Diskrit  kombinatorialMatematika Diskrit  kombinatorial
Matematika Diskrit kombinatorial
 
Graf Pohon
Graf PohonGraf Pohon
Graf Pohon
 
Materi 3 Finite State Automata
Materi 3   Finite State AutomataMateri 3   Finite State Automata
Materi 3 Finite State Automata
 
Fungsi (function)
Fungsi (function)Fungsi (function)
Fungsi (function)
 
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)
 
CFG dan PARSING - P 5 - Teknik Kompilasi
CFG dan PARSING - P 5 - Teknik KompilasiCFG dan PARSING - P 5 - Teknik Kompilasi
CFG dan PARSING - P 5 - Teknik Kompilasi
 
pewarnaan graf
pewarnaan grafpewarnaan graf
pewarnaan graf
 
Newton gregory mundur
Newton gregory mundurNewton gregory mundur
Newton gregory mundur
 
Aljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskritAljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskrit
 
Linked List dalam Struktur Data
Linked List dalam Struktur DataLinked List dalam Struktur Data
Linked List dalam Struktur Data
 
Algoritma dan Struktur Data - Pohon Biner
Algoritma dan Struktur Data - Pohon BinerAlgoritma dan Struktur Data - Pohon Biner
Algoritma dan Struktur Data - Pohon Biner
 
4.matriks dan relasi
4.matriks dan relasi4.matriks dan relasi
4.matriks dan relasi
 
circular linked list
circular linked listcircular linked list
circular linked list
 
Algoritma penjadwalan proses
Algoritma penjadwalan prosesAlgoritma penjadwalan proses
Algoritma penjadwalan proses
 
Modul Pemrograman Bahasa Assembly
Modul Pemrograman Bahasa AssemblyModul Pemrograman Bahasa Assembly
Modul Pemrograman Bahasa Assembly
 
6. analisis semantik
6. analisis semantik6. analisis semantik
6. analisis semantik
 
2. galat
2. galat2. galat
2. galat
 
5. Doubly Linked List (Struktur Data)
5. Doubly Linked List (Struktur Data)5. Doubly Linked List (Struktur Data)
5. Doubly Linked List (Struktur Data)
 
Matematika Diskrit matriks relasi-dan_fungsi
Matematika Diskrit  matriks relasi-dan_fungsiMatematika Diskrit  matriks relasi-dan_fungsi
Matematika Diskrit matriks relasi-dan_fungsi
 
Makalah Algoritma kruskal
Makalah Algoritma kruskalMakalah Algoritma kruskal
Makalah Algoritma kruskal
 

Viewers also liked

Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
Sherly Uda
 
Tugas
TugasTugas
Tugas
RAHASIA
 
E scm
E scmE scm
E scm
RAHASIA
 
4 Karakter Pengelola Uang
4 Karakter Pengelola Uang4 Karakter Pengelola Uang
4 Karakter Pengelola Uang
Sherly Uda
 
Research 025
Research 025Research 025
Research 025
Arif Rahman
 
Research 023
Research 023Research 023
Research 023
Arif Rahman
 
Queue
QueueQueue
Queue
Sherly Uda
 
Analisis desain sistem informasi ppt.12
Analisis desain sistem informasi ppt.12Analisis desain sistem informasi ppt.12
Analisis desain sistem informasi ppt.12
Ical Militanmannojack
 
Pert.1 pengenalan analisis desain
Pert.1 pengenalan analisis desainPert.1 pengenalan analisis desain
Pert.1 pengenalan analisis desain
Ical Militanmannojack
 
4 karakter
4 karakter4 karakter
4 karakter
Sherly Uda
 
Analisis desain sistem informasi ppt.11
Analisis desain sistem informasi ppt.11Analisis desain sistem informasi ppt.11
Analisis desain sistem informasi ppt.11
Ical Militanmannojack
 
06 vb looping
06 vb looping06 vb looping
06 vb looping
Arif Rahman
 
E bisnis slideshare
E bisnis slideshareE bisnis slideshare
E bisnis slideshareRAHASIA
 
04 vb intro
04 vb intro04 vb intro
04 vb intro
Arif Rahman
 
INTERNET MASUK DESA
INTERNET MASUK DESAINTERNET MASUK DESA
INTERNET MASUK DESA
RAHASIA
 
Pointer dan Linked List
Pointer dan Linked ListPointer dan Linked List
Pointer dan Linked List
Sherly Uda
 
Research 026
Research 026Research 026
Research 026
Arif Rahman
 
Data Flow Diagram
Data Flow DiagramData Flow Diagram
Data Flow Diagram
Sherly Uda
 
Aplikasi Basis Data Sederhana
Aplikasi Basis Data SederhanaAplikasi Basis Data Sederhana
Aplikasi Basis Data Sederhana
Sherly Uda
 

Viewers also liked (20)

Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
 
Tugas
TugasTugas
Tugas
 
E scm
E scmE scm
E scm
 
4 Karakter Pengelola Uang
4 Karakter Pengelola Uang4 Karakter Pengelola Uang
4 Karakter Pengelola Uang
 
Research 025
Research 025Research 025
Research 025
 
Research 023
Research 023Research 023
Research 023
 
Queue
QueueQueue
Queue
 
Analisis desain sistem informasi ppt.12
Analisis desain sistem informasi ppt.12Analisis desain sistem informasi ppt.12
Analisis desain sistem informasi ppt.12
 
Pert.1 pengenalan analisis desain
Pert.1 pengenalan analisis desainPert.1 pengenalan analisis desain
Pert.1 pengenalan analisis desain
 
4 karakter
4 karakter4 karakter
4 karakter
 
Analisis desain sistem informasi ppt.11
Analisis desain sistem informasi ppt.11Analisis desain sistem informasi ppt.11
Analisis desain sistem informasi ppt.11
 
06 vb looping
06 vb looping06 vb looping
06 vb looping
 
E bisnis slideshare
E bisnis slideshareE bisnis slideshare
E bisnis slideshare
 
04 vb intro
04 vb intro04 vb intro
04 vb intro
 
INTERNET MASUK DESA
INTERNET MASUK DESAINTERNET MASUK DESA
INTERNET MASUK DESA
 
Pointer dan Linked List
Pointer dan Linked ListPointer dan Linked List
Pointer dan Linked List
 
Pert.11 linux
Pert.11 linuxPert.11 linux
Pert.11 linux
 
Research 026
Research 026Research 026
Research 026
 
Data Flow Diagram
Data Flow DiagramData Flow Diagram
Data Flow Diagram
 
Aplikasi Basis Data Sederhana
Aplikasi Basis Data SederhanaAplikasi Basis Data Sederhana
Aplikasi Basis Data Sederhana
 

Similar to Linked List

Linked list
Linked listLinked list
Linked list
Tenia Wahyuningrum
 
Laporan Praktikum Struktur Data Modul 3
Laporan Praktikum Struktur Data Modul 3Laporan Praktikum Struktur Data Modul 3
Laporan Praktikum Struktur Data Modul 3azmi007
 
Modul 3 strukdat
Modul 3 strukdatModul 3 strukdat
Modul 3 strukdat
Vincentius Kristanto
 
Modul 2
Modul 2Modul 2
Materi linked list dan bubble sort
Materi linked list dan bubble sortMateri linked list dan bubble sort
Materi linked list dan bubble sortYunan Helmi Nasution
 
Stack with linked list(algodat)
Stack with linked list(algodat)Stack with linked list(algodat)
Stack with linked list(algodat)
Marlintika Marlintika
 
Bab 5 linked list
Bab 5 linked listBab 5 linked list
Bab 5 linked list
Fahuda E
 
Struktur data
Struktur dataStruktur data
Struktur data
yusriren20
 
Linked list
Linked listLinked list
Circular linked list
Circular linked listCircular linked list
Circular linked list
Laxer Pratama
 
Bab 6 singly_linked_list
Bab 6 singly_linked_listBab 6 singly_linked_list
Bab 6 singly_linked_list
arii_manroe
 
Persentasi linked list
Persentasi linked listPersentasi linked list
Persentasi linked list
Irsyad Casanova
 
Persentasi linked list
Persentasi linked listPersentasi linked list
Persentasi linked list
Irsyad Casanova
 
4.1 Operasi Dasar Singly Linked List 1 (primitive list)
4.1 Operasi Dasar Singly Linked List  1 (primitive list)4.1 Operasi Dasar Singly Linked List  1 (primitive list)
4.1 Operasi Dasar Singly Linked List 1 (primitive list)
Kelinci Coklat
 
Tugas kelompok mi d3_sore
Tugas kelompok mi d3_soreTugas kelompok mi d3_sore
Tugas kelompok mi d3_sore
tio_arkarna
 
POWER POINT STRUKTUR DATA AMIK BSI PURWOKERTO
POWER POINT STRUKTUR DATA AMIK  BSI PURWOKERTOPOWER POINT STRUKTUR DATA AMIK  BSI PURWOKERTO
POWER POINT STRUKTUR DATA AMIK BSI PURWOKERTO
Amalia Puspita Sari
 
Pertemuan 4 revisijan2013-mhs
Pertemuan 4 revisijan2013-mhsPertemuan 4 revisijan2013-mhs
Pertemuan 4 revisijan2013-mhs
Bina Sarana Informatika
 
Queue
Queue Queue
Struktur data
Struktur dataStruktur data
Struktur data
yusriren20
 

Similar to Linked List (20)

Linked list
Linked listLinked list
Linked list
 
Laporan Praktikum Struktur Data Modul 3
Laporan Praktikum Struktur Data Modul 3Laporan Praktikum Struktur Data Modul 3
Laporan Praktikum Struktur Data Modul 3
 
Modul 3 strukdat
Modul 3 strukdatModul 3 strukdat
Modul 3 strukdat
 
Modul 2
Modul 2Modul 2
Modul 2
 
Materi linked list dan bubble sort
Materi linked list dan bubble sortMateri linked list dan bubble sort
Materi linked list dan bubble sort
 
Stack with linked list(algodat)
Stack with linked list(algodat)Stack with linked list(algodat)
Stack with linked list(algodat)
 
Bab 5 linked list
Bab 5 linked listBab 5 linked list
Bab 5 linked list
 
Struktur data
Struktur dataStruktur data
Struktur data
 
Linked list
Linked listLinked list
Linked list
 
Circular linked list
Circular linked listCircular linked list
Circular linked list
 
Bab 6 singly_linked_list
Bab 6 singly_linked_listBab 6 singly_linked_list
Bab 6 singly_linked_list
 
Persentasi linked list
Persentasi linked listPersentasi linked list
Persentasi linked list
 
Persentasi linked list
Persentasi linked listPersentasi linked list
Persentasi linked list
 
4.1 Operasi Dasar Singly Linked List 1 (primitive list)
4.1 Operasi Dasar Singly Linked List  1 (primitive list)4.1 Operasi Dasar Singly Linked List  1 (primitive list)
4.1 Operasi Dasar Singly Linked List 1 (primitive list)
 
Tugas kelompok mi d3_sore
Tugas kelompok mi d3_soreTugas kelompok mi d3_sore
Tugas kelompok mi d3_sore
 
POWER POINT STRUKTUR DATA AMIK BSI PURWOKERTO
POWER POINT STRUKTUR DATA AMIK  BSI PURWOKERTOPOWER POINT STRUKTUR DATA AMIK  BSI PURWOKERTO
POWER POINT STRUKTUR DATA AMIK BSI PURWOKERTO
 
Pertemuan 4 revisijan2013-mhs
Pertemuan 4 revisijan2013-mhsPertemuan 4 revisijan2013-mhs
Pertemuan 4 revisijan2013-mhs
 
queue antrian
queue antrianqueue antrian
queue antrian
 
Queue
Queue Queue
Queue
 
Struktur data
Struktur dataStruktur data
Struktur data
 

More from Sherly Uda

Bahasa Query Terapan
Bahasa Query TerapanBahasa Query Terapan
Bahasa Query Terapan
Sherly Uda
 
Normalisasi
NormalisasiNormalisasi
Normalisasi
Sherly Uda
 
Model Data
Model DataModel Data
Model Data
Sherly Uda
 
Sequence Diagram
Sequence DiagramSequence Diagram
Sequence Diagram
Sherly Uda
 
Class Diagram
Class DiagramClass Diagram
Class Diagram
Sherly Uda
 
Rekayasa Kebutuhan Perangkat Lunak
Rekayasa Kebutuhan Perangkat LunakRekayasa Kebutuhan Perangkat Lunak
Rekayasa Kebutuhan Perangkat Lunak
Sherly Uda
 
Pengantar Analisis Dan Desain Sistem Informasi
Pengantar Analisis Dan Desain Sistem InformasiPengantar Analisis Dan Desain Sistem Informasi
Pengantar Analisis Dan Desain Sistem Informasi
Sherly Uda
 
Keamanan Basis Data
Keamanan Basis DataKeamanan Basis Data
Keamanan Basis Data
Sherly Uda
 
Manajemen Transaksi
Manajemen TransaksiManajemen Transaksi
Manajemen Transaksi
Sherly Uda
 
Trigger
TriggerTrigger
Trigger
Sherly Uda
 
Intent
IntentIntent
Intent
Sherly Uda
 
Widget
WidgetWidget
Widget
Sherly Uda
 
Pengantar Android
Pengantar AndroidPengantar Android
Pengantar Android
Sherly Uda
 
Model Jaringan Hopfield
Model Jaringan HopfieldModel Jaringan Hopfield
Model Jaringan Hopfield
Sherly Uda
 
Supervised Learning
Supervised LearningSupervised Learning
Supervised Learning
Sherly Uda
 
Neuron Mc Culloch Pitts dan Hebb
Neuron Mc Culloch Pitts dan HebbNeuron Mc Culloch Pitts dan Hebb
Neuron Mc Culloch Pitts dan Hebb
Sherly Uda
 
Contoh Program Jaringan Syaraf Tiruan Sederhana
Contoh Program Jaringan Syaraf Tiruan SederhanaContoh Program Jaringan Syaraf Tiruan Sederhana
Contoh Program Jaringan Syaraf Tiruan Sederhana
Sherly Uda
 
Searching
SearchingSearching
Searching
Sherly Uda
 
Representasi Pengetahuan
Representasi PengetahuanRepresentasi Pengetahuan
Representasi Pengetahuan
Sherly Uda
 
2 ruang masalah
2 ruang masalah2 ruang masalah
2 ruang masalah
Sherly Uda
 

More from Sherly Uda (20)

Bahasa Query Terapan
Bahasa Query TerapanBahasa Query Terapan
Bahasa Query Terapan
 
Normalisasi
NormalisasiNormalisasi
Normalisasi
 
Model Data
Model DataModel Data
Model Data
 
Sequence Diagram
Sequence DiagramSequence Diagram
Sequence Diagram
 
Class Diagram
Class DiagramClass Diagram
Class Diagram
 
Rekayasa Kebutuhan Perangkat Lunak
Rekayasa Kebutuhan Perangkat LunakRekayasa Kebutuhan Perangkat Lunak
Rekayasa Kebutuhan Perangkat Lunak
 
Pengantar Analisis Dan Desain Sistem Informasi
Pengantar Analisis Dan Desain Sistem InformasiPengantar Analisis Dan Desain Sistem Informasi
Pengantar Analisis Dan Desain Sistem Informasi
 
Keamanan Basis Data
Keamanan Basis DataKeamanan Basis Data
Keamanan Basis Data
 
Manajemen Transaksi
Manajemen TransaksiManajemen Transaksi
Manajemen Transaksi
 
Trigger
TriggerTrigger
Trigger
 
Intent
IntentIntent
Intent
 
Widget
WidgetWidget
Widget
 
Pengantar Android
Pengantar AndroidPengantar Android
Pengantar Android
 
Model Jaringan Hopfield
Model Jaringan HopfieldModel Jaringan Hopfield
Model Jaringan Hopfield
 
Supervised Learning
Supervised LearningSupervised Learning
Supervised Learning
 
Neuron Mc Culloch Pitts dan Hebb
Neuron Mc Culloch Pitts dan HebbNeuron Mc Culloch Pitts dan Hebb
Neuron Mc Culloch Pitts dan Hebb
 
Contoh Program Jaringan Syaraf Tiruan Sederhana
Contoh Program Jaringan Syaraf Tiruan SederhanaContoh Program Jaringan Syaraf Tiruan Sederhana
Contoh Program Jaringan Syaraf Tiruan Sederhana
 
Searching
SearchingSearching
Searching
 
Representasi Pengetahuan
Representasi PengetahuanRepresentasi Pengetahuan
Representasi Pengetahuan
 
2 ruang masalah
2 ruang masalah2 ruang masalah
2 ruang masalah
 

Linked List

  • 2. List Linier Tunggal  Sebuah list dimana elemennya hanya menyimpan pointer/informasi elemen setelahnya 2
  • 3. List Linier Ganda  Disebut juga two way chain
  • 4. List Linier Ganda  Sebuah List yang elemennya menyimpan informasi elemen sebelumnya dan informasi elemen setelahnya
  • 7. Pendefinisian List Type Data_type = …; Key_type = …; nodePtr = ^node; node = record key : key_type; data : data_type; next : nodePtr; end; Linked_list = record First : nodePtr; end; 7
  • 8. Operasi Dasar 1. Penciptaan dan penghancuran simpul (buildNode dan destroyNode) 2. Inisialisasi dan fungsi pemeriksaan linked list kosong (initL dan esEmptyL) 3. Penyisipan simpul ke linked list · Penyisipan sebagai simpul pertama (insertFirst) · Penyisipan setelah simpul tertentu (insertAfter) · Penyisipan sebagai simpul terakhir (insertLast) · Penyisipan sebelum simpul tertentu (insertBefore) 8
  • 9. Operasi Dasar 4. Penghapusan variable dinamis (simpul suatu linked list) · Penghapusan simpul pertama (deleteFirst) · Penghapusan simpul terakhir (deleteLast) · Penghapusan setelah simpul tertentu (deleteAfter) · Penghapusan simpul tertentu (deleteNode dan deleteKNode) 5.Transversal atau penelusuran seluruh simpul 6. Pencarian simpul tertentu (searchNode)9
  • 10. 1. Penciptaan dan Penghancuran simpul 10
  • 11. 2. Inisialisasi dan Memeriksa Linked List Kosong  Procedure ini menghasilkan linked list kosong ditunjuk L.  Function untuk memeriksa linked list kosong 11
  • 12. 3. Penyisipan Simpul Pertama  menyisipkan elemen baru (berupa alamat) sebagai elemen pertama linked list. 12
  • 13. 3. Penyisipan Simpul Pertama  Langkah-langkah agar rantai linked list tidak terputus: 1. Pointer next elemen baru (A) menunjuk dulu elemen pertama dari linked list 2. L.First menunjuk ke elemen baru 13
  • 14. 4. Penyisipan setelah simpul tertentu  menyisipkan elemen baru (berupa alamatnya) sebagai elemen setelah elemen tertentu di linked list. 14
  • 15. 4. Penyisipan setelah simpul tertentu  Langkah-langkah agar rantai linked list tidak terputus: 1. Pointer next elemen baru (A) menunjuk dulu elemen setelah (E)elemen tertentu (D) 2. Pointer next elemen sebelumnya (D) menunjuk ke elemen baru (A) 15
  • 16. 5. Penyisipan sebagai simpul terakhir  Menyisipkan elemen baru (A) (berupa alamatnya) sehingga elemen tersebut akan menjadi elemen terakhir linked list.  Untuk penyisipan sebagai elemen terakhir diperlukan alamat elemen terakhir (last) (E). Untuk menemukan last diperlukan penelusuran sehingga terpenuhi last^.next = nil 16
  • 17. 5. Penyisipan sebagai simpul terakhir 17  Langkah-langkah agar rantai linked list tidak terputus: 1.Telusuri linked list sehingga mendapatkan elemen last 2. Lakukan insertaAfter setelah elemen last
  • 18. 6. Penghapusan simpul pertama  Operasi ini akan menghapus elemen pertama linked list.  Langkah-langkah agar rantai linked list tidak terputus: 1. Element First dicatat di suatu elemen 2. L.First mencatat elemen selanjutnya setelah L.First 18
  • 19. 6. Penghapusan simpul pertama  Prosedur Dispose akan mengembalikan elemen dinamis ke memori sehingga dapat digunakan kembali. 19
  • 20. 7. Penghapusan simpul setelah simpul tertentu  Menghapus elemen setelah elemen tertentu.  Langkah-langkah agar rantai linked list tidak terputus: 1. Elemen tertentu yang dihapus di-cut 2. Sambungkan ke elemen berikutnya 20
  • 21. 7. Penghapusan simpul setelah simpul tertentu 21
  • 22. 8. Penghapusan simpul terakhir  Menghapus elemen pertama linked list.  Sebelum memanggil prosedur ini, harus dipastikan linked list tidak kosong. 22
  • 23. 8. Penghapusan simpul terakhir Procedure deleteLast(Var L : linked_list); Var P, Last, precLast : nodePtr; Begin If (L.First <> nil) then Begin Last := L.First precLast := Nil; while (Last^.next <> nil) then Begin precLast := Last; Last := Last^.next; End; P := Last; If (precLast = nil) then L.First := nil Else precLast^.next := nil; Dispose(P); End; End; 23
  • 24. Penghapusan simpul tertentu  Menghapus elemen tertentu.Terdapat dua versi penghapusan ini, yaitu :  Elemen tertentu didasarkan pada alamat elemen  Elemen tertentu didasarkan pada key  Untuk penghapusan elemen harus terlebih dulu diketahui elemen sebelum elemen tertentu tersebut dengan pencarian yang sekaligus mencatat elemen sebelumnya.  Langkah-langkah agar rantai linked list tidak terputus: 1. Menelusuri apakah terdapat elemen tertentu tersebut sekaligus mencatat elemen sebelumnya 2. Setelah ditemukan maka hapus elemen tertentu dengan · Mengisolasi elemen tertentu · Menghubungkan elemen sebelumnya dengan elemen setelah elemen tertentu · Dispose elemen tertentu. 24
  • 25. Penelusuran seluruh simpul  Linked list berisi sekumpulan elemen.  Dalam beberapa operasi sering diperlukan pemrosesan semua elemen linked list. 1. Init adalah prosedur untuk persiapan pemrosesan 2.Visit (P) adalah prosedur pemrosesan simpul yang saat itu (dikunjungi atau ditunjuk) 3.Terminate adalah prosedur pemrosesan akhir setelah penelusuran 25
  • 26. Penelusuran dengan While.. Do... Procedure ListTraversal(L : linked_list); Var P : nodePtr; Begin Init; P := L.First; While (P <> nil ) do Begin Visit (P); P := P^.next; End; Terminate; End; 26
  • 27. Penelusuran dengan Repeat... Until... Procedure ListTraversal (L :linked list); Var P : nodePtr; Begin If (L.First = nil) then Message_linked list_Kosong; Else Begin Init; P := L.First; Repeat Proses(P); P := P^.next; Until (P = nil); Terminasi; End; End; 27
  • 28. Pencarian simpul  Pencarian pada linked list hanya dapat dilakukan secara sekuen (berturutan).  Pencarian merupakan modifikasi dari penelurusan dengan berhenti pada simpul tertentu. 28
  • 29. Pencarian simpul Function ListSearch(L : linked_list, k : key_type, var P : nodePtr) : Boolean; Var Found : Boolean; Begin P := L.First; Found := false; While (P <> nil) and (not Found) do Begin If (P^.key = key) then Found := true else P := P^.next; End; ListSearch := Found; End; 29
  • 30. Operasi Terhadap Linked list 1. Penghapusan linked list 2. Inverse 3. Penyambungan 4. Panjang linked list
  • 31. Penghapusan linked list  Merupakan modifikasi penelusuran linked list dengan mengisolasi lebih dulu elemen yang akan dihapus.
  • 32. Inverse linked list  Membalik linked list sehingga yang semula elemen terakhir menjadi elemen pertama dan sebaliknya.
  • 33. Penyambungan dua linked list  Menyambungkan dua link list sehingga L3 akan berisi L1 disambung L2.
  • 34. Panjang linked list  Fungsi ini mengirim jumlah elemen di linked list.
  • 35. 35