Upload
ulysses-stigger
View
264
Download
3
Embed Size (px)
Citation preview
1
6.3 & 7.3NESTED LOOP
Linear DoublyLinked List
INSERT KIRI
2
INSERT KIRIMenambah simpul baru diujung paling kiri Linked List
yang sudah ada Disebut juga
INSERT AWAL
3.08
3
3.08
Kalau sudah ada 4 buah simpul, INSERT KIRI akan menginsert simpul yang baru di buat, diujung paling kiri menjadi simpul no. (5)
(5)
10
INFO
RIG
HT
LEFT
LAST
17
INFO
RIG
HT
LEFT
12
INFO
LEFT
25
RIG
HT
INFO
LEFT
RIG
HT
FIRST
(1)(2)(3)(4)
4
3.05
sudah ada simpul awalsebagai berikut :
INFO
RIG
HT
LEFT
FIRST
LAST
25
(1)
P
5
3.05
akan dibuat simpul baruyang akan diinsert disini
Perhatikan pointer Pmenujuk simpul yang barutidak menunjuk simpul yang lama lagi
INFO
RIG
HTP
LEFT
12
(2)
INFO
RIG
HT
LEFT
FIRST
LAST
25
(1)
6
3.05
sehingga akan ter-linksebagai berikut :
INFO
RIG
HTP
LEFT
12
(2)
INFO
RIG
HT
LEFT
FIRST
LAST
25
(1)
7
3.05
void Awal (void){ int X; scanf(“%i”, &X); P = (Simpul *) malloc(sizeof(Simpul)); P->INFO = X; LAST->LEFT = P; P->RIGHT = LAST; LAST = P; P->LEFT = NULL;}
1)2)3)4)5)6)
Algoritma Membuat Simpul BaruDan INSERT KIRI
INFO
RIG
HT
LEFT
LAST FIRST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
8
3.05
Algoritma tahap per tahap
9
3.05
Membuat Simpul (2)
1)2)3)4)5)6)
P = (Simpul *) malloc(sizeof(Simpul));
P = (Simpul *) malloc(sizeof(Simpul)); P->INFO = X; LAST->LEFT = P; P->RIGHT = LAST; LAST = P; P->LEFT = NULL;
INFO
RIG
HT
LEFT
FIRST
INFO
RIG
HTP
LEFT
25
(2) (1)
LAST
10
3.05
P->INFO diisi dengan nilai X
1)2)3)4)5)6)
P->INFO = X;
P = (Simpul *) malloc(sizeof(Simpul)); P->INFO = X; LAST->LEFT = P; P->RIGHT = LAST; LAST = P; P->LEFT = NULL;
INFO
RIG
HT
LEFT
FIRST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
LAST
11
3.05
Pointer LEFT Simpul (1) menunjuk simpul (2)
1)2)3)4)5)6)
LAST->LEFT = P;
P = (Simpul *) malloc(sizeof(Simpul)); P->INFO = X; LAST->LEFT = P; P->RIGHT = LAST; LAST = P; P->LEFT = NULL;
INFO
RIG
HT
LEFT
FIRST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
LAST
12
3.05
Pointer RIGHT simpul (2) menunjuk simpul (1)
1)2)3)4)5)6)
P->RIGHT = LAST;
P = (Simpul *) malloc(sizeof(Simpul)); P->INFO = X; LAST->LEFT = P; P->RIGHT = LAST; LAST = P; P->LEFT = NULL;
INFO
RIG
HT
LEFT
FIRST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
LAST
13
3.05
Pointer LAST pindah menunjuk simpul terakhir
1)2)3)4)5)6)
LAST = P;
P = (Simpul *) malloc(sizeof(Simpul)); P->INFO = X; LAST->LEFT = P; P->RIGHT = LAST; LAST = P; P->LEFT = NULL;
INFO
RIG
HT
LEFT
FIRST
LAST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
14
3.05
Pointer LEFT simpul (2) diisi NULL
INFO
RIG
HT
LEFT
FIRST
LAST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
1)2)3)4)5)6)
P->LEFT = NULL;
P = (Simpul *) malloc(sizeof(Simpul)); P->INFO = X; LAST->LEFT = P; P->RIGHT = LAST; LAST = P; P->LEFT = NULL;
15
3.05
LATIHANDI
KELAS
16
3.05
Pertanyaan :1. Ada berapa buah simpul2. Ada berapa buah pointer Sebutkan nama dan isinya masing-masing
INFO
RIG
HTP
LEFT
12
(2)
INFO
RIG
HT
LEFT
FIRST
LAST
25
(1)
17
3.05
1
2
3
4
6
5
7
INFO
RIG
HTP
LEFT
12
(2)
INFO
RIG
HT
LEFT
FIRST
LAST
25
(1)
18
INFO
RIG
HT
LEFT
FIRSTLAST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
1
45
23
6
7
No Pointer Nama pointer isi
1
2
3
4
5
6
7
LASTP
FIRST
No Nama isi&(2)
&(2)&(1)
19
No Pointer Nama pointer isi
4
5
6
7
1
2
->LEFT yaitu :->LEFT yaitu :
INFO
RIG
HT
LEFT
FIRSTLAST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
1
45
2
3
6
7
6 ->LEFT yaitu :
1
2
3
LASTP
FIRST
No Nama isi&(2)
&(2)&(1)
NULL
20
INFO
RIG
HT
LEFT
FIRSTLAST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
1
45
2
3
6
7
No Pointer Nama pointer isi
4
5
6
7
1
2
->LEFT yaitu : LAST->LEFT->LEFT yaitu : P->LEFT
6 ->LEFT yaitu :
1
2
3
LASTP
FIRST
No Nama isi&(2)
&(2)&(1)
NULL
21
INFO
RIG
HT
LEFT
FIRSTLAST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
1
45
2
3
6
7
No Pointer Nama pointer isi
4
5
6
7
1
2
->LEFT yaitu : LAST->LEFT->LEFT yaitu : P->LEFT
6 ->LEFT yaitu :
3 ->LEFT yaitu :
5 ->LEFT yaitu :
1
2
3
LASTP
FIRST
No Nama isi&(2)
&(2)&(1)
&(2)
NULL
22
INFO
RIG
HT
LEFT
FIRSTLAST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
1
45
2
3
6
7
No Pointer Nama pointer isi
4
5
6
7
1
2
->LEFT yaitu : LAST->LEFT->LEFT yaitu : P->LEFT
6 ->LEFT yaitu :
3 ->LEFT yaitu : FIRST->LEFT
5 ->LEFT yaitu :
1
2
3
LASTP
FIRST
No Nama isi&(2)
&(2)&(1)
&(2)
NULL
23
INFO
RIG
HT
LEFT
FIRSTLAST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
1
45
2
3
6
7
No Pointer Nama pointer isi
4
5
6
7
1
2
->LEFT yaitu : LAST->LEFT->LEFT yaitu : P->LEFT
6 ->LEFT yaitu : FIRST->LEFT->LEFT
3 ->LEFT yaitu : FIRST->LEFT
5 ->LEFT yaitu :
1
2
3
LASTP
FIRST
No Nama isi&(2)
&(2)&(1)
&(2)
NULL
24
INFO
RIG
HT
LEFT
FIRSTLAST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
1
45
2
3
6
7
No Pointer Nama pointer isi
4
5
6
7
1
2
->LEFT yaitu : LAST->LEFT->LEFT yaitu : P->LEFT
6 ->LEFT yaitu : FIRST->LEFT->LEFT
3 ->LEFT yaitu : FIRST->LEFT
5 ->LEFT yaitu :
1
2
3
LASTP
FIRST
No Nama isi&(2)
&(2)&(1)
1 ->RIGHT yaitu :
2 ->RIGHT yaitu :
&(2)
&(1)
NULL
25
INFO
RIG
HT
LEFT
FIRSTLAST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
1
45
2
3
6
7
No Pointer Nama pointer isi
4
5
6
7
1
2
->LEFT yaitu : LAST->LEFT->LEFT yaitu : P->LEFT
6 ->LEFT yaitu : FIRST->LEFT->LEFT
3 ->LEFT yaitu : FIRST->LEFT
5 ->LEFT yaitu :
1
2
3
LASTP
FIRST
No Nama isi&(2)
&(2)&(1)
1 ->RIGHT yaitu : LAST->RIGHT
2 ->RIGHT yaitu : P->RIGHT
&(2)
&(1)
NULL
26
INFO
RIG
HT
LEFT
FIRSTLAST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
1
45
2
3
6
7
No Pointer Nama pointer isi
4
5
6
7
1
2
->LEFT yaitu : LAST->LEFT->LEFT yaitu : P->LEFT
6 ->LEFT yaitu : FIRST->LEFT->LEFT
3 ->LEFT yaitu : FIRST->LEFT
5 ->LEFT yaitu : LAST->RIGHT->LEFT P->RIGHT->LEFT
1
2
3
LASTP
FIRST
No Nama isi&(2)
&(2)&(1)
1 ->RIGHT yaitu : LAST->RIGHT
2 ->RIGHT yaitu : P->RIGHT
&(2)
&(1)
NULL
27
INFO
RIG
HT
LEFT
FIRSTLAST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
1
45
2
3
6
7
No Pointer Nama pointer isi
4
5
6
7
1
2
->LEFT yaitu : LAST->LEFT->LEFT yaitu : P->LEFT
6 ->LEFT yaitu : FIRST->LEFT->LEFT
3 ->LEFT yaitu : FIRST->LEFT
5 ->LEFT yaitu : LAST->RIGHT->LEFT P->RIGHT->LEFT
1
2
3
LASTP
FIRST
No Nama isi&(2)
&(2)&(1)
1 ->RIGHT yaitu : LAST->RIGHT
2 ->RIGHT yaitu : P->RIGHT
3 ->RIGHT yaitu :
5 ->RIGHT yaitu :
&(2)
&(1)
NULL
NULL
28
INFO
RIG
HT
LEFT
FIRSTLAST
12
INFO
RIG
HTP
LEFT
25
(2) (1)
1
45
2
3
6
7
No Pointer Nama pointer isi
4
5
6
7
1
2
->LEFT yaitu : LAST->LEFT->LEFT yaitu : P->LEFT
6 ->LEFT yaitu : FIRST->LEFT->LEFT
3 ->LEFT yaitu : FIRST->LEFT
5 ->LEFT yaitu : LAST->RIGHT->LEFT P->RIGHT->LEFT
1
2
3
LASTP
FIRST
No Nama isi&(2)
&(2)&(1)
1 ->RIGHT yaitu : LAST->RIGHT
2 ->RIGHT yaitu : P->RIGHT
3 ->RIGHT yaitu : FIRST->RIGHT
5 ->RIGHT yaitu : LAST->RIGHT->RIGHT P->RIGHT->RIGHT
&(2)
&(1)
NULL
NULL