Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Linked List INSERT KANAN 6.3 & 7.3 NESTED LOOP.

Presentasi serupa


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

1 Linked List INSERT KANAN 6.3 & 7.3 NESTED LOOP

2 Menambah simpul baru diujung paling kanan Linked List yang sudah ada
3.08 INSERT KANAN Menambah simpul baru diujung paling kanan Linked List yang sudah ada Disebut juga INSERT AKHIR

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

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

5 P 25 12 akan dibuat simpul baru yang akan diinsert disini LAST FIRST
3.05 akan dibuat simpul baru yang akan diinsert disini LAST FIRST P INFO LINK INFO LINK 25 12 Perhatikan pointer P menujuk simpul yang baru tidak menunjuk simpul yang lama lagi

6 P 25 12 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 25 12 Perhatikan : Pointer LAST akan menunjuk simpul terakhir

7 P 25 12 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 25 12 Perhatikan : Pointer LAST akan menunjuk simpul terakhir

8 P 25 12 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 25 12 Perhatikan : Pointer LAST akan menunjuk simpul terakhir

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

10 Hasil instruksi satu per satu
3.05 Hasil instruksi satu per satu

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

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

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

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

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

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

17 P 25 12 LAST->LINK = P; atau FIRST->LINK = P; LAST FIRST INFO
3.05 FIRST P INFO LINK INFO LINK 25 12 (1) (2) Pointer ini namanya ada 2 yaitu : FIRST->LINK, atau LAST->LINK Jadi untuk meng-link simpul (1) dengan simpul (2), dapat ditulis dengan salah satu dari 2 instruksi berikut ini: LAST->LINK = P; atau FIRST->LINK = P;

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

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

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

21 P=(Simpul*)malloc(sizeof(Simpul));
P->INFO = X; LAST->LINK = P; LAST = P; P->LINK = NULL; 1) 2) 3) 4) 5) 3.05 LAST FIRST P INFO LINK INFO LINK Pointer LAST harus menunjuk simpul terakhir 25 12 (1) (2) LAST = P; instruksi 4) LAST P FIRST INFO LINK INFO LINK 25 12 (1) (2)

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

23 P->LINK = NULL; P 25 12 instruksi 5)
P=(Simpul*)malloc(sizeof(Simpul)); P->INFO = X; LAST->LINK = P; LAST = P; P->LINK = NULL; 1) 2) 3) 4) 5) 3.05 P->LINK = NULL; instruksi 5) LAST P FIRST INFO LINK INFO LINK 25 12 (1) (2)

24 12 25 \0 800 P X 12 800 1000 FIRST LAST 800 1000 800 INFO LINK INFO

25 3.05 LATIHAN DI KELAS

26 P 25 12 Ada berapa buah simpul yang terlihat Pertanyaan :
3.05 LAST P FIRST INFO LINK INFO LINK 25 12 (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

27 3.05 LAST P FIRST 3 INFO LINK 1 INFO LINK 2 25 12 4 (1) (2) 5

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


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

Presentasi serupa


Iklan oleh Google