7.single linked list
TRANSCRIPT
-
8/18/2019 7.Single Linked List
1/22
LINKED LIST: SINGLE
-
8/18/2019 7.Single Linked List
2/22
Materi
• List in daily life
• List in data structure
•
Denisi dan ilustrasi• Operasi Dasar: Single Linked List
• Array S Linked List
•
Diskusi!Tugas
-
8/18/2019 7.Single Linked List
3/22
List in daily life
-
8/18/2019 7.Single Linked List
4/22
List in Data Structure
-
8/18/2019 7.Single Linked List
5/22
Denisi
• Se"ua# daftar terstruktur yang "erisi p$inter yang
%enun&uk ke ele%en 'n$de( sesuda#nya 'Alain)*+,-(.
• /angkaian0untaian n$de) di%ana setiap n$denyaterdapat '%ini%al( se"ua# p$inter yang %enun&uk ke
n$de sesuda#nya dan n$de terak#ir %enun&uk Null.'1arnet2Del T$ng$ *++3(.
• Susunan linier dari ku%pulan data yang%enggunakan si%pul 'n$de( untuk %enyi%pan setiap
data dan p$inter untuk %eng#u"ungkan si%pul satudengan lainnya. 'Kadir)*+,,(.
• 1entuk linier dari ku%pulan nilai data 'n$des( yangsaling terkait %enggunakan p$inter '4a#yudi)*++5(.
-
8/18/2019 7.Single Linked List
6/22
Ilustrasi Single Linked List
6$inter
Null
-
8/18/2019 7.Single Linked List
7/22
Operasi Dasar Linked List
,. Inserti$n7 O',(
*. Searc#ing 7 O'n(
-. Deleti$n 7 O'n(
-
8/18/2019 7.Single Linked List
8/22
,. Inserti$n: k$nsep
• Add '8alue(7 Insert'(
• Mena%"a#kan se"ua# n$de pada tailse"ua# list.
• Kasus , &ika #ead9 n$de yangdita%"a#kan akan sekaligus se"agai#ead dan tail
• Kasus * &ika list suda# terisi: n$deta%"a#an akan di#u"ungkan dengantail 'n$de terak#ir(.
-
8/18/2019 7.Single Linked List
9/22
,. Inserti$n:pseud$c$deO',(
Kasus ,
Kasus *
-
8/18/2019 7.Single Linked List
10/22
,. Mena%"a# ND pada listk$s$ng
Null
;ead +. K$ndisi a
-
8/18/2019 7.Single Linked List
11/22
*. Mena%"a# G
G
Tail.Ne
=t
ND
Tail.
Ne=t
;ead
Tail
Null
n$de'8alue( #ead9null> #ead tail tail.Ne=t tail
List k$s$ng ? @ @ @ @ND ? ND ND @ @
G N ND @ G G
-
8/18/2019 7.Single Linked List
12/22
dstBk$ndisi ak#ir%ena%"a# L;
L; Tail.Ne=tND Tail.Ne=t
;ead Tail
NullES Tail.Ne=tG
Tail.Ne=t
n$de'8alue( #ead9null> #ead tail tail.Ne=t tailList k$s$ng ? @ @ @ @
ND ? ND ND @ @
G N ND @ G G
ES N ND @ ES ES
L; N ND @ L; L;
-
8/18/2019 7.Single Linked List
13/22
*. Searc#ing
• Linear: %enc$c$kkan ele%en yangdicari dengan setiap n$de.
Tidak k$s$ngdan %asi#ada n$de
setela#nya
-
8/18/2019 7.Single Linked List
14/22
-. Deleti$n ',(
K,: List
K$s$ng
K*: List "erisi ,n$de
K-: %eng#apus , #eadn$de
-
8/18/2019 7.Single Linked List
15/22
-. Deleti$n '*(
KC: tidak %eng#apus karenan$de yang akan di#apus tidakdite%ukan
K: %eng#apus , n$deselain 'diantara( #eaddan tail
K5: %eng#apus , tailn$de
-
8/18/2019 7.Single Linked List
16/22
ARRAY VS LINKED LIST
-
8/18/2019 7.Single Linked List
17/22
/$nde ,: Esiensi
• T#e 4inner: Array
• 6e%anggilan ele%en linked list)O'n()relatif le"i# la%a dari array) O',(.
• Linked list #arus searc#ing se%uaele%en sedangkan array "ergantungpada indeks ele%en.
-
8/18/2019 7.Single Linked List
18/22
/$nde *: leksi"ilitas
• T#e 4inner: Linked List
• Linked list le"i# eksi"el dala% #alperu"a#an ukuran dan &u%la#ele%en.
• Fntuk %ena%"a# ele%en) array#arus %enyiapkan te%pat k$s$ng:
%enggeser0 %e%"uat array le"i#"esar ukuran!%enyalin ke te%patyang "aru.
-
8/18/2019 7.Single Linked List
19/22
/$nde -: ke"utu#an %e%$ri tiapele%en
• T#e 4inner: Array
• Fntuk setiap ele%en) Linked list%enyi%pan sekaligus data danp$inter yang %enun&uk ke ele%en"erikutnya.
• Fntuk data yang "esar) dengan
&u%la# ele%en yang sa%ake"utu#an %e%$rinya akan *=Array yang #anya %enyi%pan data
sa&a.
-
8/18/2019 7.Single Linked List
20/22
/$nde 5: ke%uda#an %e%"uat%ultidi%ensi
• T#e 4inner: Array
• Me%"uat papan catur dengan array '3=3(le"i# %uda# daripada %enggunakan linked
list.• Fntuk #al yang sa%a) perlu di"uat linked list
yang terdiri dari "e"erapa linked list yang lain.
• Se#ingga untuk %engakses ele%en list akan
se%akin la%"at dan sulit dipa#a%i
-
8/18/2019 7.Single Linked List
21/22
6ili# Array atau Linked List>
• Array &ika anda %enginginkan aksesyang k$nstan %enggunakan indeksdan ta#u dengan tepat &u%la# data
yang akan disi%pan.
• Linked List &ika anda ingin%enyi%pan data terus %enerus atau
"erulangkali %enyisipkan data ditenga#@tenga# list.
-
8/18/2019 7.Single Linked List
22/22
Daftar 6ustaka
• Allain) Ale=. *+,-. Hu%ping int$ !!. pr$gra%%ing.c$%
• 1arnett) Gran8ille. Del T$ng$) Luca. *++3 Data Structuresand Alg$rit#%.#ttp:0d$tnetslackers.c$%
• Dale) Nell. *++-. 6lus 6lus Data Structures. H$nes and
1artlett 6u"lis#ers. T$r$nt$.• Kadir) A"dul. *+,,. Te$ri dan Aplikasi Struktur Data
%enggunakan !!.6ener"it Andi. ?$gyakarta.
• Suarga)Suarga.*+,*.Alg$rit%a dan pe%r$gra%an.6ener"it Andi.?$gyakarta
• 4a#yudi) 1a%"ang. *++5. 6engantar Struktur Data danAlg$rit%a.6ener"it Andi. ?$gyakarta.
• #ttp:008isualg$.net0list.#t%l. Accessed J@+*@*+,