Linear Doubly INSERT KIRI

Slides:



Advertisements
Presentasi serupa
Menempatkan Pointer Q 6.3 & 7.3 NESTED LOOP.
Advertisements

STRUKTUR DATA (7) single linked list circular
MODUL KULIAH STRUKTUR DATA TANGGAL REVISI TANGGAL BERLAKU KODE DOKUMEN :::::: September Session 8 Edited By Al-Bahra. L.B, S. Kom, M.
Linked List BEBERAPA CONTOH SOAL 6.3 & 7.3 NESTED LOOP.
CARA MEMBUAT SINGLE LINKED LIST DENGAN BORLAND C++
BAB 5 TREE (Pohon) 179.
LINKED LIST (List linier)
Linked List Pembuatan Simpul Awal.
LINK LIST Latifah Rifani.
Soal-Soal Latihan Mandiri
Operasi pada pohon biner
Single Linked List Yuliana Setiowati, S.Kom.
BY YOHANA N Sumber Kepustakaan : yohananugraheni.files.wordpress.com/.../linked- lis... 1 LINKED LIST.
Penelusuran Bab 7 Pohon Biner 219.
Algoritma & Struktur Data Linked List Evangs Mailoa.
Linked List DELETE 6.3 & 7.3 NESTED LOOP.
LINKED LIST by Yohana N.
Double Ended QUEUE (DeQue) 6.3 & 7.3 NESTED LOOP.
Struktur Data List Linear : Linked List (Double Linkedlist)
Linear Data Structures (Linked List). Node Link atau pointer data field.
Algoritma dan Struktur Data
Algorithm and Data Structures.
Algoritma dan Struktur Data
Pertemuan ketujuh Struktur data st3telkom.ac.id
Tenia Wahyuningrum, S.Kom. MT
Linear List.
Struktur Data List Linear : Linked List (Single Linkedlist)
POINTER.
Algoritma dan Struktur Data
Pertemuan Linked list jual [Valdo] Lunatik Chubby Stylus.
Bocoran Soal 6.3 & 7.3 NESTED LOOP UTS.
Universitas Budi Luhur
ADT DINAMIS : SINGLY LINKED LIST DAN DOUBLE LINKED LIST
SENARAI BERANTAI TUNGGAL
BAB3 QUEUE 6.3 & 7.3 NESTED LOOP.
LINKED LIST by Yohana N.
QUEUE Copyright 2008 by Yohana.
12. Doubly Linear Linked List
BAB 5 TREE (Pohon) 179.
STACK 6.3 & 7.3 NESTED LOOP.
SUMMARY LINKED LIST.
Defri Kurniawan DOUBLE LINKED LIST Defri Kurniawan
11. Singly Circular Linked List
Linked List BEBERAPA CONTOH SOAL 6.3 & 7.3 NESTED LOOP.
Linked List DELETE 6.3 & 7.3 NESTED LOOP.
MATAKULIAH : STRUKTUR DATA
Linked List INSERT KIRI 6.3 & 7.3 NESTED LOOP.
Linked List 6.3 & 7.3 NESTED LOOP.
QUEUE (ANTRIAN) Queue atau antrian didefinisikan sebagai kumpulan dari obyek-obyek yang homogen dengan operasi penambahan elemen (Enqueue) dan pengambilan.
LINKED LIST GANDA Linked list ganda (doubly linked list) adalah linked list yang setiap simpul-nya (node) memiliki dua buah pointer, masing-masing berada.
STACK (TUMPUKAN) Stack atau tumpukan didefinisikan sebagai kumpulan dari obyek-obyek yang homogen dengan operasi penambahan dan pengambilan elemen melalui.
LINKED LIST by Yohana N Sumber Kepustakaan : yohananugraheni.files.wordpress.com/.../linked-lis...
Oleh Shoffin Nahwa Utama, S.Kom
STRUKTUR DATA (8.2) double linked list circular
STRUKTUR DATA LINKED LIST
Linked List INSERT KANAN 6.3 & 7.3 NESTED LOOP.
DEQUE Deque (Deck atau Dequeue) adalah suatu list linier atau linier list, yang penambahan dan penghapusan elemennya dapat dilakukan pada kedua sisi ujung.
IT234 Algoritma dan Struktur Data
Defri Kurniawan VARIASI LIST Defri Kurniawan
Double STACK 6.3 & 7.3 NESTED LOOP.
Linear Doubly INSERT TENGAH
Skema Double Linier LinkedList
Linear Doubly Linked List
LINKED LIST (SENARAI BERANTAI)
LINKED LIST MELINGKAR Linked List melingkar (circular) adalah linked list linier biasa dimana pointer pada node terakhir diarahkan kembali ke node pertama.
Algoritma dan Struktur Data
Pohon Biner.
IT234 Algoritma dan Struktur Data
Linked List DELETE TENGAH 6.3 & 7.3 NESTED LOOP.
Review Struktur Data Nisa’ul Hafidhoh, MT.
Transcript presentasi:

Linear Doubly INSERT KIRI Linked List INSERT KIRI 6.3 & 7.3 NESTED LOOP

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.08 LAST FIRST INFO RIGHT RIGHT LEFT LEFT INFO INFO RIGHT LEFT LEFT INFO RIGHT 10 17 12 25 (5) (4) (3) (2) (1) Kalau sudah ada 4 buah simpul, INSERT KIRI akan menginsert simpul yang baru di buat, diujung paling kiri menjadi simpul no. (5)

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

12 25 P akan dibuat simpul baru yang akan diinsert disini LAST FIRST 3.05 akan dibuat simpul baru yang akan diinsert disini LAST FIRST P RIGHT RIGHT LEFT INFO LEFT INFO 12 25 (2) (1) Perhatikan pointer P menujuk simpul yang baru tidak menunjuk simpul yang lama lagi

12 25 P sehingga akan ter-link sebagai berikut : LAST FIRST RIGHT 3.05 sehingga akan ter-link sebagai berikut : LAST FIRST P RIGHT RIGHT LEFT INFO LEFT INFO 12 25 (2) (1)

Algoritma Membuat Simpul Baru Dan INSERT KIRI 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) LAST FIRST P RIGHT LEFT RIGHT LEFT INFO INFO 12 25 (2) (1)

Algoritma tahap per tahap 3.05 Algoritma tahap per tahap

25 P = (Simpul *) malloc(sizeof(Simpul)); P LAST (2) (1) P->INFO = X; LAST->LEFT = P; P->RIGHT = LAST; LAST = P; P->LEFT = NULL; 1) 2) 3) 4) 5) 6) 3.05 P = (Simpul *) malloc(sizeof(Simpul)); LAST FIRST P RIGHT RIGHT LEFT INFO LEFT INFO 25 (2) (1) Membuat Simpul (2)

12 25 P->INFO = X; P LAST (2) (1) P->INFO diisi dengan nilai 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) 3.05 P->INFO = X; LAST FIRST P RIGHT RIGHT LEFT INFO LEFT INFO 12 25 (2) (1) P->INFO diisi dengan nilai X

12 25 LAST->LEFT = P; P LAST (2) (1) 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) 3.05 LAST->LEFT = P; LAST FIRST P RIGHT RIGHT LEFT INFO LEFT INFO 12 25 (2) (1) Pointer LEFT Simpul (1) menunjuk simpul (2)

12 25 P->RIGHT = LAST; P LAST (2) (1) 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) 3.05 P->RIGHT = LAST; LAST FIRST P RIGHT RIGHT LEFT INFO LEFT INFO 12 25 (2) (1) Pointer RIGHT simpul (2) menunjuk simpul (1)

12 25 LAST = P; P (2) (1) Pointer LAST pindah menunjuk simpul terakhir 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) 3.05 LAST = P; LAST FIRST P RIGHT RIGHT LEFT INFO LEFT INFO 12 25 (2) (1) Pointer LAST pindah menunjuk simpul terakhir

12 25 P->LEFT = NULL; P (2) (1) Pointer LEFT simpul (2) diisi NULL 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) 3.05 P->LEFT = NULL; LAST FIRST P RIGHT RIGHT LEFT INFO LEFT INFO 12 25 (2) (1) Pointer LEFT simpul (2) diisi NULL

3.05 LATIHAN DI KELAS

12 25 P Pertanyaan : Ada berapa buah simpul Ada berapa buah pointer 3.05 LAST FIRST P RIGHT RIGHT LEFT INFO LEFT INFO 12 25 (2) (1) Pertanyaan : Ada berapa buah simpul Ada berapa buah pointer Sebutkan nama dan isinya masing-masing

12 25 P LAST FIRST RIGHT RIGHT LEFT INFO LEFT INFO (2) (1) 3.05 1 3 2 6 5 4 (2) (1) 7

12 25 P No Nama isi &(2) LAST P &(2) FIRST &(1) RIGHT RIGHT No Nama isi LEFT INFO 3 LEFT INFO 2 &(2) 1 LAST 12 6 25 P 2 &(2) 5 3 FIRST &(1) 4 (2) (1) 7 No Pointer Nama pointer isi 4 5 6 7

12 25 P No Nama isi &(2) LAST P &(2) FIRST &(1) RIGHT 3 LEFT RIGHT No Nama isi LEFT INFO INFO 2 &(2) 1 LAST 12 6 25 P 2 &(2) 5 3 FIRST &(1) 4 (2) (1) 7 No Pointer Nama pointer isi ->LEFT yaitu : 4 1 NULL ->LEFT yaitu : 2 ->LEFT yaitu : 6 5 6 7

12 25 P No Nama isi &(2) LAST P &(2) FIRST &(1) RIGHT 3 LEFT LEFT RIGHT No Nama isi INFO INFO 2 &(2) 1 LAST 12 6 25 P 2 &(2) 5 3 FIRST &(1) 4 (2) (1) 7 No Pointer Nama pointer isi ->LEFT yaitu : LAST->LEFT 4 1 NULL ->LEFT yaitu : P->LEFT 2 ->LEFT yaitu : 6 5 6 7

12 25 P No Nama isi &(2) LAST P &(2) FIRST &(1) RIGHT 3 LEFT RIGHT No Nama isi LEFT INFO INFO 2 &(2) 1 LAST 12 6 25 P 2 &(2) 5 3 FIRST &(1) 4 (2) (1) 7 No Pointer Nama pointer isi ->LEFT yaitu : LAST->LEFT 4 1 NULL ->LEFT yaitu : P->LEFT 2 ->LEFT yaitu : 6 5 6 ->LEFT yaitu : 3 &(2) ->LEFT yaitu : 5 7

12 25 P No Nama isi &(2) LAST P &(2) FIRST &(1) RIGHT 3 LEFT RIGHT No Nama isi LEFT INFO INFO 2 &(2) 1 LAST 12 6 25 P 2 &(2) 5 3 FIRST &(1) 4 (2) (1) 7 No Pointer Nama pointer isi ->LEFT yaitu : LAST->LEFT 4 1 NULL ->LEFT yaitu : P->LEFT 2 ->LEFT yaitu : 6 5 6 ->LEFT yaitu : FIRST->LEFT 3 &(2) ->LEFT yaitu : 5 7

12 25 P No Nama isi &(2) LAST P &(2) FIRST &(1) RIGHT 3 LEFT RIGHT No Nama isi LEFT INFO INFO 2 &(2) 1 LAST 12 6 25 P 2 &(2) 5 3 FIRST &(1) 4 (2) (1) 7 No Pointer Nama pointer isi ->LEFT yaitu : LAST->LEFT 4 1 NULL ->LEFT yaitu : P->LEFT 2 ->LEFT yaitu : FIRST->LEFT->LEFT 6 5 6 ->LEFT yaitu : FIRST->LEFT 3 &(2) ->LEFT yaitu : 5 7

12 25 P No Nama isi &(2) LAST P &(2) FIRST &(1) RIGHT 3 LEFT RIGHT No Nama isi LEFT INFO INFO 2 &(2) 1 LAST 12 6 25 P 2 &(2) 5 3 FIRST &(1) 4 (2) (1) 7 No Pointer Nama pointer isi ->LEFT yaitu : LAST->LEFT 4 1 NULL ->LEFT yaitu : P->LEFT 2 ->LEFT yaitu : FIRST->LEFT->LEFT 6 ->RIGHT yaitu : 5 1 &(1) ->RIGHT yaitu : 2 6 ->LEFT yaitu : FIRST->LEFT 3 &(2) ->LEFT yaitu : 5 7

12 25 P No Nama isi &(2) LAST P &(2) FIRST &(1) RIGHT 3 LEFT RIGHT No Nama isi LEFT INFO INFO 2 &(2) 1 LAST 12 6 25 P 2 &(2) 5 3 FIRST &(1) 4 (2) (1) 7 No Pointer Nama pointer isi ->LEFT yaitu : LAST->LEFT 4 1 NULL ->LEFT yaitu : P->LEFT 2 ->LEFT yaitu : FIRST->LEFT->LEFT 6 ->RIGHT yaitu : LAST->RIGHT 5 1 &(1) ->RIGHT yaitu : P->RIGHT 2 6 ->LEFT yaitu : FIRST->LEFT 3 &(2) ->LEFT yaitu : 5 7

12 25 P No Nama isi &(2) LAST P &(2) FIRST &(1) RIGHT 3 LEFT RIGHT No Nama isi LEFT INFO INFO 2 &(2) 1 LAST 12 6 25 P 2 &(2) 5 3 FIRST &(1) 4 (2) (1) 7 No Pointer Nama pointer isi ->LEFT yaitu : LAST->LEFT 4 1 NULL ->LEFT yaitu : P->LEFT 2 ->LEFT yaitu : FIRST->LEFT->LEFT 6 ->RIGHT yaitu : LAST->RIGHT 5 1 &(1) ->RIGHT yaitu : P->RIGHT 2 6 ->LEFT yaitu : FIRST->LEFT 3 &(2) ->LEFT yaitu : LAST->RIGHT->LEFT P->RIGHT->LEFT 5 7

12 25 P No Nama isi &(2) LAST P &(2) FIRST &(1) RIGHT 3 LEFT LEFT RIGHT No Nama isi INFO INFO 2 &(2) 1 LAST 12 6 25 P 2 &(2) 5 3 FIRST &(1) 4 (2) (1) 7 No Pointer Nama pointer isi ->LEFT yaitu : LAST->LEFT 4 1 NULL ->LEFT yaitu : P->LEFT 2 ->LEFT yaitu : FIRST->LEFT->LEFT 6 ->RIGHT yaitu : LAST->RIGHT 5 1 &(1) ->RIGHT yaitu : P->RIGHT 2 6 ->LEFT yaitu : FIRST->LEFT 3 &(2) ->LEFT yaitu : LAST->RIGHT->LEFT P->RIGHT->LEFT 5 7 ->RIGHT yaitu : 3 NULL ->RIGHT yaitu : 5

12 25 P No Nama isi &(2) LAST P &(2) FIRST &(1) RIGHT 3 LEFT LEFT RIGHT No Nama isi INFO INFO 2 &(2) 1 LAST 12 6 25 P 2 &(2) 5 3 FIRST &(1) 4 (2) (1) 7 No Pointer Nama pointer isi ->LEFT yaitu : LAST->LEFT 4 1 NULL ->LEFT yaitu : P->LEFT 2 ->LEFT yaitu : FIRST->LEFT->LEFT 6 ->RIGHT yaitu : LAST->RIGHT 5 1 &(1) ->RIGHT yaitu : P->RIGHT 2 6 ->LEFT yaitu : FIRST->LEFT 3 &(2) ->LEFT yaitu : LAST->RIGHT->LEFT P->RIGHT->LEFT 5 7 ->RIGHT yaitu : FIRST->RIGHT 3 NULL ->RIGHT yaitu : LAST->RIGHT->RIGHT P->RIGHT->RIGHT 5

4. 10 2.2.4 INSERT TENGAH. Sudah ada doubly linked linear list. Simpul no (7) sudah ditunjuk oleh pointer P. Sudah dibuat sebuah simpul baru yang ditunjuk oleh pointer P, dan P->INFO sudah diisi seperti ilustrasi berikut ini. P LEFT INFO RIGHT Q 20 LEFT INFO RIGHT LEFT INFO RIGHT 32 27 (7) (8) Soal : Susun algoritma untuk menginsert simpul baru tersebut antara simpul no (7) dan simpul no (8), sehingga terhubung seperti yang diilustrasikan berikut ini : P LEFT INFO RIGHT 20 Q 4) LEFT INFO RIGHT 8 3) LEFT INFO RIGHT 2) 1) 32 27 7 9 Instruksi yang diperlukan, adalah sebagai berikut : 2.2.4 Fungsi untuk Insert Tengah. void InsertTengah (void) { int X; scanf(“%i”, &X); p = (Simpul *) malloc(sizeof(Simpul)); P->INFO = X; P->RIGHT = Q->RIGHT; P->LEFT = Q; Q->RIGHT->LEFT = P; Q->RIGHT = P; Sekarang simpul ini menjadi berada pada urutan simpul yang ke 9. Nomor ini tak ada dalam komputer. Nomor ini hanya dipakai untuk mengilustrasikan urutan simpul. 1) 2) 3) 4) atau P->RIGHT->LEFT = P; Ada 4 instruksi yang pokok 114