Pertemuan 4. Single Linked List non Circular Menggunakan Head dan Tail

dokumen-dokumen yang mirip
KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST

Struktur Data II. Single Linked List - Non circular

STRUKTUR DATA (2) Single Linked List

Tugas Studi Kasus. Linked List SLLNC dengan Head & Tail

Data structure :Metode LINK LIST. Kusnawi, S.Kom, M.Eng STMIK AMIKOM Yogyakarta

STRUKTUR DATA single linked list non circular

DOUBLE LINKED LIST. Danang Wahyu Utomo Danang Wahyu Utomo, M.Kom, M.CS

KONSEP POINTER DAN LINKED LIST

Praktikum Algoritma dan Struktur Data

KONSEP POINTER DAN LINKED LIST

Array VS Linked List

Pertemuan 3. Perubah Dinamis (Dinamic variable) Suatu perubah yang akan dialokasikan hanya pada saat diperlukan, yaitu setelah program dieksekusi.

MODUL 6 SINGLE & DOUBLE LINKED LIST

PRAKTIKUM ALGORITMA DAN STRUKTUR DATA DOUBLE LINKED LIST CIRCULAR

SINGLE LINKED LIST NON CIRCULAR (SENARAI BERANTAI TUNGGAL TIDAK BERPUTAR)

PRAKTIKUM ALGORITMA DAN STRUKTUR DATA

//membuat sebuah tipe data baru yang terdiri dari. //field data bertipe integer //field next merupakan pointer dari list

DIKTAT PRAKTIKUM ALGORITMA DAN STRUKTUR DATA

MODUL PRAKTIKUM STRUKTUR DATA FAKULTAS ILMU KOMPUTER UNIVERSITAS ESA UNGGUL

Pertemuan 7. REVIEW dan QUIS

LAPORAN PRAKTIKUM IX. Oleh:

SINGLE LINKED LIST (NON CIRCULAR)

Algoritma dan Struktur Data

List Linear (Linked List) Farah Zakiyah Rahmanti 2014

Linked List dan Implementasinya dalam Bahasa Java

Modul Praktikum Algoritma dan Struktur Data

Senarai berantai. linked list. Pertemuan keenam Struktur data st3telkom.ac.id. by : tenia wahyuningrum & Sisilia Thya Safitri

Algoritma Pemrograman & Struktur Data

Algoritma dan Struktur Data. Pertemuan 9 Circular Linked List

05. Double Linked List

Tutorial - Single Linked List

A. TUJUAN PEMBELAJARAN

Single Linked List (1)

LAPORAN PRAKTIKUM RESMI QUEUE

STACK atau TUMPUKAN. Pertemuan 5 STACK (TUMPUKAN)

LIST. Dewi Sartika, M.Kom

Double linked list. Gambar 1. Double linket list dengan empat simpul Deklarasi Double Linked List di dalam Pascal :

QUEUE (ANTREAN) Pertemuan 6 PENGERTIAN QUEUE (ANTREAN)

Algoritma dan Struktur Data. Ramos Somya, S.Kom., M.Cs.

QUEUE (ANTREAN) Prinsip Antrean : FIFO (First In First Out) FCFS (First Come First Serve) Yang Tiba lebih awal Maka akan dilayani Terlebih Dahulu

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 1)

Masukan Judul... Infotype àsebuah tipe terdefinisi yang menyimpan informasi sebuah elemen list

DOUBLY LINKED LIST PROGRAM : DOUBLY LINKED LIST (TAMBAH SIMPUL DI BELAKANG)

BAB IX LINKED LIST (SENARAI BERANTAI)

Algoritma dan Struktur Data. Pertemuan 7 Linked List

Algoritma dan Struktur Data. Ramos Somya

PRAKTIKUM STRUKTUR DATA QUEUE. SULIDAR FITRI, M.Sc

Algoritma dan Struktur Data. Ramos Somya

LINKED LIST. TUJUAN UMUM Memahami konsep linked list TUJUAN KHUSUS

RESUME A B C D. Gambar 1 Double Linked list dengan Empat Simpul

PERTEMUAN KE 11. Linked List. Apa Itu Linked List?

STRUKTUR DATA POKOK BAHASAN - 8 QUEUE ( ANTRIAN)

ALGORITMA DAN STRUKTUR DATA

# NINE Queue dengan Array

Lecture Notes On Algorithms and Data Structures. Oleh Thompson Susabda Ngoen

BAB II Senarai Berantai (Linked List)

: Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Linked List. Single Linked List

PENGENALAN List merupakan sebuah pemikiran/konsep struktur data yang sangat dasar pada pemrograman agar lebih fleksibel. Setiap elemen akan ditambahka

04. Single Linked List

BAB IV Antrian(Queue)

STRUKTUR DATA. Literatur

1. Traversing Untuk algoritma traversing sama seperti pada single Link List

Algoritma Dan Struktur Data II. Queue

Linked List 6.3 & 7.3 NESTED LOOP

Algoritma dan Struktur Data. Pertemuan 8 Doubly Linked List

Materi 9 : QUEUE (ANTREAN) Dosen:

DIG1G3 Implementasi Struktur Data

IT234 Algoritma dan Struktur Data. Tree

3. DOUBLE LINK LIST. Lab. Teknik Informatika Struktur Data 1

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

Modul Praktikum Algoritma dan Struktur Data BAB 6 LINKED LIST

Algoritma dan Struktur Data. Linked List

Algoritma dan Struktur Data. Queue

Review : Sifat Implementasi Linear List dengan Array

KUM 5 IMPLEMENTASI QUEUE

ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE

LINKED LIST. Double Linked List adalah :

Penambahan Simpul (Node)

Kode MK/ Pemrograman Terstruktur 2. ZK Abdurahman Baizal. KK Algoritma dan Komputasi. Queue (Antrian)

Data Structure STRUKTUR DATA QUEUE. Chapter 3. Dahlia Widhyaestoeti, S.Kom

Ujian Tengah Semester Struktur Data dan Algoritma Fakultas Ilmu Komputer, Universitas Indonesia 9 November 2006

MODUL PRAKTIKUM STRUKTUR DATA. Dosen Pengampu M.Bahrul Ulum, S.Kom., M.Kom. Asisten Lab Mia Kastina PROGRAM STUDI TEKNIK INFORMATIKA

LIST BERKAIT(LINKED LIST)

STRUKTUR DATA POKOK BAHASAN - 7 STACK ( TUMPUKAN )

Algoritma Dan Struktur Data II

Algoritma dan Struktur Data STACK

STACK dan QUEUE MODUL PRAKTIKUM STRUKTUR DATA 09 UNIVERSITAS KRISTEN DUTA WACANA. Daftar Isi: Stack dan Queue. Latihan soal. Guided.

Array dan Vector Linked List STRUKTUR DATA. JULIO ADISANTOSO Departemen Ilmu Komputer IPB. Pertemuan 2 : 23 Juni 2015

// Created by Andri Andriyan // Linked List. #include <stdlib.h> #include <conio2.h> #include <stdio.h>

List akan disimpan dalam bagian memori komputer yang dinamakan HEAP

Struktur Data Array. Rijal Fadilah S.Si

Double Linked List DIKTAT KULIAH. Pertemuan 6

Gambar 1. Single Linked List

MAKALAH STRUKTUR DATA. DOSEN PEMBIMBING Nisa miftachurohmah, S.kom., M.Si PENYUSUN SITI JAMILATUL MU ADDIBAH ( )

A. TUJUAN PEMBELAJARAN

Gambar 1. Single Linked List

ALGORITMA & PEMROGRAMAN

STL DLL STRUKTUR DATA. JULIO ADISANTOSO Departemen Ilmu Komputer IPB. Pertemuan 3 : 29 Juni 2015

Transkripsi:

Pertemuan 4 Single Linked List non Circular Menggunakan Head dan Tail Dibutuhkan dua variabel pointer : head dan tail Head selalu menunjuk pada node pertama, sedangkan tail selalu menunjuk pada node terakhir. Kelebihan dari Single Linked List dengan Head & Tail adalah pada penambahan data di belakang, hanya dibutuhkan tail yang mengikat node baru saja tanpa harus menggunakan perulangan pointer bantu. 1

Inisialisasi Linked List TNode *head, *tail; Fungsi Inisialisasi Linked List void init(){ head = NULL; tail = NULL; Function untuk mengetahui kondisi LinkedList kosong / tidak int isempty(){ if(tail == NULL) return 1; else return 0; void insertdepan(int databaru){ TNode *baru; baru = new TNode; baru->data = databaru; baru->next = NULL; if(isempty()==1){ head=tail=baru; tail->next=null; else { baru->next = head; head = baru; printf( Data masuk\n ); Menambah Node di Depan Dengan Head dan Tail 2

3

void tambahbelakang(int databaru){ TNode *baru,*bantu; baru = new TNode; baru->data = databaru; baru->next = NULL; if(isempty()==1){ head=baru; tail=baru; tail->next = NULL; else { tail->next = baru; tail=baru; printf("data masuk\n ); Menambah Node di Belakang Dengan Head dan Tail 4

Menghapus Node di Depan (Dengan Head dan Tail) Penghapusan node tidak boleh dilakukan jika keadaan node sedang ditunjuk oleh pointer, maka harus dilakukan penunjukkan terlebih dahulu dengan pointer hapus pada head, kemudian dilakukan pergeseran head ke node berikutnya sehingga data setelah head menjadi head baru, kemudian menghapus pointer hapus dengan menggunakan perintah delete. Jika tail masih NULL maka berarti list masih kosong! 5

void hapusdepan(){ TNode *hapus; int d; if (isempty()==0){ if(head!=tail){ hapus = head; d = hapus->data; head = head->next; delete hapus; else { d = tail->data; head=tail=null; printf( %d terhapus\n,d); else printf("masih kosong\n ); 6

Menghapus Node di Belakang (Dengan Head dan Tail) Penghapusan node tidak boleh dilakukan jika keadaan node sedang ditunjuk oleh pointer, maka harus dilakukan penunjukkan terlebih dahulu dengan variabel hapus pada tail. Jika tail masih NULL maka berarti list masih kosong! Dibutuhkan pointer bantu untuk membantu pergeseran dari head ke node berikutnya sampai sebelum tail, sehingga tail dapat ditunjukkan ke bantu, dan bantu tersebut akan menjadi tail yang baru. Setelah itu hapus pointer hapus dengan menggunakan perintah delete. void hapusbelakang(){ TNode *bantu,*hapus; int d; if (isempty()==0){ bantu = head; if(head!=tail){ while(bantu->next!=tail){ bantu = bantu->next; hapus = tail; tail=bantu; d = hapus->data; delete hapus; tail->next = NULL; else { d = tail->data; head=tail=null; cout<<d<<" terhapus\n"; else cout<<"masih kosong\n"; 7

null Function untuk menghapus semua elemen LinkedList dengan HEAD & TAIL void clear() { TNode *bantu,*hapus; bantu = head; while(bantu!=null) { hapus = bantu; bantu = bantu->next; delete hapus; head = NULL; tail = NULL; 8

Latihan Soal I Struktur Data (Pertemuan 4) 1. Kelebihan dari Single Linked List dengan Head & Tail adalah : a. Penambahan data dibelakang b. Penambahan data didepan c. Penghapusan data dibelakang d. Penghapusan data didepan 2. Head dan Tail menunjuk pada node. a. Head menunjuk node pertama, tail menunjuk node terakhir b. Head menunjuk node terakhir, tail menunjuk node pertama c. Head menunjuk node pertama, tail menunjuk node pertama d. Head menunjuk node terakhir, tail menunjuk node terakhir 2. Head dan Tail menunjuk pada node. a. Head menunjuk node pertama, tail menunjuk node terakhir b. Head menunjuk node terakhir, tail menunjuk node pertama c. Head menunjuk node pertama, tail menunjuk node pertama d. Head menunjuk node terakhir, tail menunjuk node terakhir 3. Jika Tail = Null, maka kondisi Linked List adalah : a. Penuh c. Tidak dapat ditambah b. Kosong d. Baru 9

3. Jika Tail = Null, maka kondisi Linked List adalah : a. Penuh c. Tidak dapat ditambah b. Kosong d. Baru 4. Gambar diatas menunjukkan bentuk penghapusan node pada posisi : a. Belakang c. Tengah b. Depan d. Depan dan Belakang 4. Gambar diatas menunjukkan bentuk penambahan node pada posisi : a. Belakang c. Tengah b. Depan d. Depan dan Belakang 5. Perintah yang tepat untuk menyatakan Linked list berada dalam kondisi kosong, adalah. a. head=tail c. bantu=head b. head=tail=null d. bantu=tail 10

5. Perintah yang tepat untuk menyatakan Linked list berada dalam kondisi kosong, adalah. a. head=tail c. bantu=head b. head=tail=null d. bantu=tail 1. Kelebihan dari Single Linked List dengan Head & Tail adalah : a. Penambahan data dibelakang b. Penambahan data didepan c. Penghapusan data dibelakang d. Penghapusan data didepan Latihan II Soal Struktur Data (Review Materi Pertemuan 3 & Pertemuan 4) Buatlah Ilustrasi / Penggambaran untuk menambah dan menghapus node di posisi tengah pada : 1. Single Linked List dengan Head 2. Single Linked List dengan Head & Trail 11