Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Linked List INSERT KIRI 6.3 & 7.3 NESTED LOOP.

Presentasi serupa


Presentasi berjudul: "Linked List INSERT KIRI 6.3 & 7.3 NESTED LOOP."— Transcript presentasi:

1 Linked List INSERT KIRI 6.3 & 7.3 NESTED LOOP

2 Menambah simpul baru diujung paling kiri Linked List yang sudah ada
3.08 INSERT KIRI Menambah simpul baru diujung paling kiri Linked List yang sudah ada Disebut juga INSERT AWAL

3 3.08 FIRST LAST INFO LINK INFO LINK INFO LINK INFO LINK 25 12 17 10 (5) (1) (2) (3) (4) Kalau sudah ada 4 buah simpul, INSERT KIRI akan menginsert simpul yang baru di buat, diujung paling kiri menjadi simpul no. (5)

4 P 25 sudah ada simpul awal sebagai berikut : LAST FIRST INFO LINK 3.05
(1)

5 P 14 25 akan dibuat simpul baru yang akan diinsert disini LAST FIRST
3.05 LAST FIRST P INFO LINK INFO LINK 14 25 (1) Perhatikan pointer P menujuk simpul yang baru, simpul (2) , tidak menunjuk simpul (1) lagi

6 P 14 25 sehingga akan ter-link sebagai berikut : LAST FIRST INFO LINK
3.05 sehingga akan ter-link sebagai berikut : LAST FIRST P INFO LINK INFO LINK 14 25 (2) (1)

7 P 14 25 sehingga akan ter-link sebagai berikut : LAST FIRST INFO LINK
3.05 sehingga akan ter-link sebagai berikut : LAST FIRST P INFO LINK INFO LINK 14 25 (2) (1)

8 void InsertKiri (void) { int X; scanf(“%i”, &X);
3.05 Instruksi (algoritma) yang diperlukan, bila ditulis dalam sebuah fungsi : void InsertKiri (void) { int X; scanf(“%i”, &X); P=(Simpul*)malloc(sizeof(Simpul)); P->INFO = X; P->LINK = FIRST; FIRST = P; } 1) 2) 3) 4) Ada 4 instruksi pokok

9 Hasil instruksi satu per satu
3.05 Hasil instruksi satu per satu

10 P P=(Simpul*)malloc(sizeof(Simpul)); 25
P->INFO = X; P->LINK = FIRST FIRST = P; 1) 2) 3) 4) 3.05 P=(Simpul*)malloc(sizeof(Simpul)); instruksi 1) LAST FIRST P INFO LINK INFO LINK 25 (2) (1) Pointer P sudah menunjuk simpul no(2), tidak lagi menunjuk simpul (1)

11 25 \0 P X Sudad ada satu buah simpul awal 1000 FIRST LAST 1000 1000
INFO LINK 25 \0 1000 P FIRST LAST X 1000 1000 1000

12 25 \0 P X 800 misal alamat simpul baru = 800 1000 FIRST LAST 800 1000
INFO LINK 800 INFO LINK misal alamat simpul baru = 800 25 \0 1000 P FIRST LAST X 800 1000 1000

13 P P->INFO = X; 12 25 P=(Simpul*)malloc(sizeof(Simpul));
P->LINK = FIRST FIRST = P; 1) 2) 3) 4) 3.05 P->INFO = X; instruksi 2) LAST FIRST P INFO LINK INFO LINK 12 25 (2) (1) misal X hasil input = 12

14 12 25 \0 P X 12 800 1000 FIRST LAST 800 1000 1000 INFO LINK INFO LINK
Misal nilai X = 12 25 \0 1000 P FIRST LAST X 800 1000 1000 12

15 P P->LINK = FIRST; 14 25 P=(Simpul*)malloc(sizeof(Simpul));
P->INFO = X; P->LINK = FIRST FIRST = P; 1) 2) 3) 4) 3.05 P->LINK = FIRST; instruksi 3) LAST FIRST P INFO LINK INFO LINK 14 25 (2) (1)

16 14 25 P X 14 1000 800 \0 1000 FIRST LAST 800 1000 1000 INFO LINK INFO

17 P 14 25 P->LINK = LAST; atau P->LINK = FIRST; LAST 3.05 FIRST
INFO LINK INFO LINK 14 25 (2) (1) Ada 2 pointer yang menunjuk simpul ini yaitu : FIRST, dan LAST Jadi untuk meng-link simpul (2) dengan simpul (1), dapat ditulis dengan salah satu dari 2 instruksi berikut ini: P->LINK = LAST; atau P->LINK = FIRST;

18 14 25 14 25 Mana yang benar : P->LINK = FIRST; atau
LAST FIRST P INFO LINK INFO LINK 14 25 (2) (1) LAST FIRST P INFO LINK INFO LINK 14 25 (2) (1) Untuk meng-Link simpul (2) Dengan simpul (1) Mana yang benar : P->LINK = FIRST; atau P->LINK = LAST;

19 14 25 14 25 Sekarang ini, baik : P->LINK = FIRST; atau
LAST FIRST P INFO LINK INFO LINK 14 25 (2) (1) LAST FIRST P INFO LINK INFO LINK 14 25 (2) (1) Untuk meng-Link simpul (2) Dengan simpul (1) Sekarang ini, baik : P->LINK = FIRST; atau P->LINK = LAST; Sama sama benar (SEKARANG INI)

20 P->LINK = FIRST; P (1) (2) (5) (3) (4)
LAST P LINK LINK LINK LINK INFO INFO INFO INFO INFO LINK 14 25 12 17 10 (1) (2) (5) (3) (4) Yang menunjuk simpul ini adalah pointer : FIRST Sehingga bila simpul yang sudah ada lebih dari satu simpul (misal empat simpul) maka instruksi yang benar adalah : P->LINK = FIRST;

21 Pointer paling kiri selalu ditunjuk oleh pointer FIRST
3.08 FIRST LAST INFO LINK INFO LINK INFO LINK INFO LINK 25 12 17 10 (1) (2) (3 (4) Pointer paling kiri selalu ditunjuk oleh pointer FIRST

22 P P 14 25 FIRST = P; 14 25 P=(Simpul*)malloc(sizeof(Simpul));
P->INFO = X; P->LINK = FIRST FIRST = P; 1) 2) 3) 4) 3.05 LAST FIRST P INFO LINK INFO LINK instruksi 4) 14 25 FIRST = P; (1) FIRST LAST P INFO LINK INFO LINK 14 25 (1)

23 14 25 P X 14 1000 800 \0 1000 FIRST LAST 800 800 1000 INFO LINK INFO

24 P 14 25 Setelah simpul baru telah tersambung
FIRST 3.05 LAST P INFO LINK INFO LINK 14 25 (2) (1) Setelah simpul baru telah tersambung Maka simpul ini menjadi Simpul no. (1).

25 FIRST 3.05 LAST P INFO LINK INFO LINK 14 25 (1) (2)

26 3.05 LATIHAN DI KELAS

27 P 14 25 Ada berapa buah simpul yang terlihat Pertanyaan :
FIRST 3.05 LAST P INFO LINK INFO LINK 14 25 (1) (2) Ada berapa buah simpul yang terlihat Pertanyaan : Ada berapa buah pointer yang terlihat - Apa nama masing-masing pointer - Apa isi masing-masing pointer

28 14 25 P FIRST 3.05 LAST 2 3 1 4 (1) (2) 5 No Nama Isi
INFO LINK 3 INFO LINK 1 14 25 4 (1) (2) 5 No Nama Isi Pointer Pointer pointer 1 2 3 4 5

29 12 25 P FIRST 3.05 LAST 2 3 1 4 (1) (2) 5 No Nama Isi
INFO LINK 3 INFO LINK 1 12 25 4 (1) (2) 5 No Nama Isi Pointer Pointer pointer 1 P &(1) 2 FIRST &(1) 3 LAST &(2) P->LINK, atau FIRST->LINK 4 &(2) 5 LAST->LINK atau P->LINK->LINK atau FIRST->LINK->LINK NULL

30 14 25 P Sebutkan pointer mana saja yang nilainya sama FIRST 3.05 LAST
INFO LINK 3 INFO LINK 1 14 25 4 (1) (2) 5 Sebutkan pointer mana saja yang nilainya sama

31 12 25 P TRUE atau FALSE Kondisi berikut ini if( P->LINK == LAST )
FIRST 3.05 LAST P 2 INFO LINK 3 INFO LINK 1 12 25 4 (2) (1) 5 TRUE atau FALSE Kondisi berikut ini if( P->LINK == LAST ) if( LAST->LINK == FIRST->LINK->LINK )

32 Linked List INSERT TENGAH 6.3 & 7.3 NESTED LOOP

33 3.08 INSERT TENGAH Menyisipkan simpul baru diantara dua buah simpul pada sebuah Linked List yang sudah ada

34 . . . . . . . . . . . . P 3.08 Q (7) (8) P Q (7) (8) INFO LINK 14 INFO
22 20 . . . (7) (8) P INFO LINK 14 Q INFO LINK INFO LINK . . . . . . 22 20 (7) (8)

35 . . . . . . . . . . . . a a b P 3.08 Q (7) (8) P Q (7) (8) INFO LINK
14 Q INFO LINK INFO LINK . . . 22 20 . . . a (7) (8) P INFO LINK 14 Q INFO LINK INFO LINK a b . . . . . . 22 20 (7) (8)

36 a a b b a a b P Q (7) (8) P Q (7) (8) 14 22 20 14 22 20 INFO LINK INFO

37 a a b b a a b P Q (7) (8) P Q (7) (8) 14 22 20 14 22 20 INFO LINK INFO

38 a a b b a a b P Q Q->LINK = P; (7) (8) I P->LINK = Q->LINK; P
INFO LINK 14 Q INFO LINK INFO LINK 22 20 a a Q->LINK = P; (7) (8) I b P->LINK = Q->LINK; P INFO LINK b P->LINK = Q->LINK; 14 II Q a Q->LINK = P; INFO LINK INFO LINK a b 22 20 (7) (8)

39 . . . . . . a b a Q->LINK = P; I P->LINK = Q->LINK; P 3.08 Q
INFO LINK 14 Q INFO LINK INFO LINK . . . 22 20 . . . a (7) (8) a I Q->LINK = P; b P->LINK = Q->LINK;

40 a Q->LINK = P; a a P b Q (7) (8) Dengan : P Q (7) (8) I
INFO LINK b P->LINK = Q->LINK; 14 Q INFO LINK INFO LINK 22 20 a (7) (8) Dengan : Q->LINK = P; P INFO LINK 14 Q INFO LINK INFO LINK a 22 20 (7) (8)

41 P->LINK = Q->LINK;
a P I Q->LINK = P; INFO LINK b P->LINK = Q->LINK; 14 Q INFO LINK INFO LINK a 22 20 (7) (8) Dengan : P->LINK = Q->LINK; P INFO LINK 14 Q b INFO LINK INFO LINK a 22 20 (7) (8)

42 P->LINK = Q->LINK;
a P I Q->LINK = P; INFO LINK b P->LINK = Q->LINK; 14 Q INFO LINK INFO LINK a 22 20 (7) (8) Dengan : P->LINK = Q->LINK; P INFO LINK 14 Q b INFO LINK INFO LINK a 22 20 (7) (8)

43 . . . . . . b a a II P->LINK = Q->LINK; Q->LINK = P; P 3.08 Q
INFO LINK 14 Q INFO LINK INFO LINK . . . 22 20 . . . a (7) (8) II b P->LINK = Q->LINK; a Q->LINK = P;

44 P->LINK = Q->LINK;
II b P P->LINK = Q->LINK; INFO LINK a Q->LINK = P; 14 Q INFO LINK INFO LINK 22 20 a (7) (8) Dengan : P->LINK = Q->LINK; P INFO LINK 14 Q INFO LINK b INFO LINK a 22 20 a (7) (8)

45 b a Q->LINK = P; b a P b a Q (7) (8) Dengan : P Q (8) (7) (8) (9)
II b P P->LINK = Q->LINK; INFO LINK a Q->LINK = P; 14 Q INFO LINK b INFO LINK 22 20 a (7) (8) Dengan : Q->LINK = P; P INFO LINK 14 Q (8) INFO LINK b INFO LINK a 22 20 (7) (8) (9)

46 P->LINK = Q->LINK;
Algoritma untuk : INSERT TENGAH Bila pointer Q sudah menunjuk simpul Yang disebelah kiri : Q->LINK = P; P->LINK = Q->LINK;


Download ppt "Linked List INSERT KIRI 6.3 & 7.3 NESTED LOOP."

Presentasi serupa


Iklan oleh Google