Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

LINKED LIST (List linier). Definisi Linked list adalah sekumpulan komponen yangsaling berhubungan (berantai) secara berurutan dengan bantuan pointer data.

Presentasi serupa


Presentasi berjudul: "LINKED LIST (List linier). Definisi Linked list adalah sekumpulan komponen yangsaling berhubungan (berantai) secara berurutan dengan bantuan pointer data."— Transcript presentasi:

1 LINKED LIST (List linier)

2 Definisi Linked list adalah sekumpulan komponen yangsaling berhubungan (berantai) secara berurutan dengan bantuan pointer data Nulldata Simpul / node Link

3 Linked list terdiri dari 2 komponen:  data : satu atau lebih field yang yang berisi data di linked list.  Link : satu pointer yang menunjuk ke data berikutnya. data Simpul / node Link

4 Deklarasi Link list struct node { int info; struct node *nextPtr; } nextptrinfo Link node

5 Ilustrasi menyambung node a dgn b: //deklarasi Link List Node *a; Node *nextptr; a = new Node; //pendeklarasian dengan menggunakan keyword new //menyambung link list Int data ; a -> data = 1; a->nextptr = NULL; Null1 nextptrdata Link New node Node a

6 //pendeklarasian node b Node * b; b->data = 2; b->nextptr = NULL; Null2 Node b

7 //menyambung node a dan node b a->nextptr = b; nextptr1 Link null2 Link Node a Node b

8 Operasi-Operasi Linked List 1.Buat List 2.Tambah node(simpul) 3.Hapus node(simpul) 4.Cari node(simpul) 5.Melacak list (Membaca node-node)

9 Membuat linked list Syarat dalam membuat linked list: Harus mempunyai ujung awal dari simpul dan ujung akhir. Ujung awal, untuk mengetahui awal dari simpul. Ujung akhir untuk mengetahui sampai dimana linked list berakhir data Nulldata Simpul Linkawal akhir

10 Tambah Node/Simpul Fungsi menambah simpul di belakang. Langkah-langkahnya: 1.membuat simpul baru kemudian diisi info baru. 2.simpul paling akhir dihubungkan ke simpul baru. 3.penunjuk pointer akhir diarahkan ke simpul simpul baru.

11 Ilustrasi menambah simpul baru A akhir CN awalBaru I. D A akhir CN awalBaru II. D A akhir CN awalBaru III. D pointer

12 Procedure menambah simpul void tambahnode(NODPTR *s, NODPTR t, NODPTR p) { if (p==NULL) { t -> next = *s; *s = t; } else { t -> next = p -> next; p ->next = t; } }

13 2.Membaca isi Simpul Pertama kali kita atur supaya pointer bantu menunjuk ke pointer awal. Setelah isi simpul terbaca, pointer bantu kita garakkan ke kanan untuk membaca simpul berikut. Proses ini kita ulangi sampai pointer bantu berimpitan dengan pointer akhir

14 Ilustrasi membaca simpul A akhir BC awal Bantu I. AA

15 Procedure membaca simpul Procedure baca; Var Bantu : simpul; Begin Bantu :=Awal; Repeat write(Bantu^.info); Bantu :=Bantu^.Berikut; Until Bantu :=nil; End;

16 Cara menghapus Pertama kali kita letakkan pointer bantu di sebelah kiri simpul yang dihapus (Gb.I) Simpul yang dihapus kita tunjuk dengan simpul lain misal: hapus. (Gb.I) Pinter pada simpul bantu, kita arahkan pada simpul yang ditunjuk oleh pointer hapus( Gb. II) Simpul yang ditunjuk oleh pointer hapus kita dispose(Gb. III)

17 Ilustrasi A Bantu BCD awalakhir D Hapus A Bantu BCD awalakhir D Hapus A Bantu CD awalakhir D Gb. I Gb.II Gb.III Dispose

18 Procedure Hapus_Tengah(Var L : Pointer; X : Integer); Var Bantu,Hapus : Pointer; Begin Bantu := L; New(Hapus); While Bantu^.Berikutnya <> nil Do Begin if Bantu^.Berikutnya^.nilai = X then begin Hapus:=Bantu^.Berikutnya; Bantu^.Berikutnya:=Hapus^.Berikutnya; dispose(Hapus); End;

19 The End


Download ppt "LINKED LIST (List linier). Definisi Linked list adalah sekumpulan komponen yangsaling berhubungan (berantai) secara berurutan dengan bantuan pointer data."

Presentasi serupa


Iklan oleh Google