DIG1G3 Implementasi Struktur Data

dokumen-dokumen yang mirip
DIG1G3 Implementasi Struktur Data

Algoritma dan Struktur Data. Pertemuan 7 Linked List

Algoritma dan Struktur Data. Pertemuan 9 Circular Linked List

LIST. Dewi Sartika, M.Kom

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

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

KUM 3 IMPLEMENTASI LIST

MODUL 6 SINGLE & DOUBLE LINKED LIST

KONSEP POINTER DAN LINKED LIST

BAB IX LINKED LIST (SENARAI BERANTAI)

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

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

SINGLE LINKED LIST (NON CIRCULAR)

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

List Linear (Linked List) Farah Zakiyah Rahmanti 2014

Algoritma dan Struktur Data. Linked List

Algoritma dan Struktur Data. Pertemuan 8 Doubly Linked List

SENARAI BERANTAI (LINK LIST)

KONSEP POINTER DAN LINKED LIST

DIG1G3 Implementasi Struktur Data

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST

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

Algoritma dan Struktur Data

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

LAPORAN PRAKTIKUM IX. Oleh:

MODUL PRAKTIKUM STRUKTUR DATA

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

LINKED LIST. TUJUAN UMUM Memahami konsep linked list TUJUAN KHUSUS

Struktur Data II. Single Linked List - Non circular

ALGORITMA DAN STRUKTUR DATA

STRUKTUR DATA (2) Single Linked List

Algoritma Pemrograman & Struktur Data

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II

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

List: Pokok Bahasan dan TIK

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

Modul Praktikum Algoritma dan Struktur Data BAB 6 LINKED LIST

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

Linked List dan Implementasinya dalam Bahasa Java

Tugas Studi Kasus. Linked List SLLNC dengan Head & Tail

Tutorial - Single Linked List

PRAKTIKUM STRUKTUR DATA QUEUE. SULIDAR FITRI, M.Sc

Linked List 6.3 & 7.3 NESTED LOOP

Double Linked List. Double Linked List

Variasi List Linier. Nisa ul Hafidhoh, MT

BAB IX LINKED LIST (SENARAI BERANTAI)

STL DLL STRUKTUR DATA. JULIO ADISANTOSO Departemen Ilmu Komputer IPB. Pertemuan 3 : 27 Juni 2016

Gambar 1. Single Linked List

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

BAB II Senarai Berantai (Linked List)

STRUKTUR DATA single linked list non circular

05. Double Linked List

UJIAN AKHIR SEMESTER GANJIL 2005/2006 ALGORITMA & STRUKTUR DATA / CS2014

Array VS Linked List

Praktikum Algoritma dan Struktur Data

LAPORAN PRAKTIKUM RESMI QUEUE

Pada kondisi ini proses penghapusan tidak bisa dilakukan Kondisi linked list memiliki hanya 1 data{satu simpul} Akhir. Akhir

LIST BERKAIT(LINKED LIST)

Praktikum Algoritma dan Struktur Data 2010

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

Algoritma Pemrograman & Struktur Data

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

Pertemuan 7. REVIEW dan QUIS

Struktur Data. Queue (Antrian)

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

Single Linked List (1)

Algoritma dan Struktur Data. Queue

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

Kode : IF2121 NIM :... Matakuliah : Algoritma dan Struktur Data Nama :... Hari, Tanggal : Senin, 13 November 2017 Waktu : 150 Menit

Lab. Teknik Informatika Struktur Data 1

Penambahan Simpul (Node)

BAB XI Manipulasi Binary Tree

REPRESENTASI FISIK LIST LINEAR

Algoritma dan Struktur Data. Ramos Somya

DIG1G3 Implementasi Struktur Data

QUEUE (ANTREAN) Operasi Antrean : FIFO (First In First Out) Elemen yang pertama masuk merupakan elemen yang pertama keluar.

A B C E F G K Contoh Tree

STRUKTUR DATA. Literatur

2. Mahasiswa dapat membuat dan menggunakan array dan linked list dalam suatu kasus.

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

Review : Sifat Implementasi Linear List dengan Array

Stack. Pointer ke node pertama dari stack. Bagian deklarasi di atas kita asumsikan disimpan menjadi sebuah header file dengan nama stack.

A. TUJUAN PEMBELAJARAN

Binary Tree. Binary Tree dapat digambarkan berdasarkan kondisinya, sebagai berikut: Pointer ke akar (root) dari tree

Single Linked List. Single Linked List

BAB IV Antrian(Queue)

List Berkait(Linked List) Overview. Tujuan Instruksional

03 LINKED LIST. Slide 0 voice. Slide 1 voice. Slide 2 voice. Thompson Susabda Ngoen 1 P a g e

Algoritma dan Struktur Data STACK

ALGORITMA & PEMROGRAMAN

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

Struktur Data dan Algoritma

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

04. Single Linked List

KERUGIAN DAN KEUNTUNGAN LINKED LIST

(3) BAHAN KAJIAN (materi ajar)

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

STACK atau TUMPUKAN. Pertemuan 5 STACK (TUMPUKAN)

Transkripsi:

DIG1G3 Implementasi Struktur Data Program Studi Diploma III Teknik Informatika Fakultas Ilmu Terapan Telkom University Dosen: Cahyana, S.T., M.Kom. Indra Azimi, S.T., M.T.

Tujuan Pertemuan 4 Mahasiswa mengetahui dan dapat mengimplementasikan ADT untuk Singly Linked List

3 LIST List: A collection of elements of the same type. The length of a list is the number of elements in the list. Following are some of the operations performed on a list: 1. Create the list. The list is initialized to an empty state. 2. Determine whether the list is empty. 3. Determine whether the list is full. 4. Find the size of the list. 5. Destroy, or clear, the list. 6. Determine whether an item is the same as a given list element. 7. Insert an item in the list at the specified location. 8. Remove an item from the list at the specified location. 9. Replace an item at the specified location with another item. 10. Retrieve an item from the list from the specified location. 11. Search the list for a given item.

4 Linked List Data Link Alamat node berikutnya Informasi Linked list: kumpulan komponen nodes. Setiap node (kecuali node terakhir) menyimpan alamat dari node berikutnya. Alamat dari node pertama pada list disimpan di lokasi yang berbeda head / first Setiap node terhubung dengan penguhubung (pointer) yang mengindikasikan dimana node berikutnya berada. Dynamic data structure

5 Linked List Declare each node as a class or struct. The data type :?? The link component of each node is a pointer. The data type of this pointer variable is the node type itself. The variable declaration is as follows: typedef struct node { int info; nodetype *link; } nodetype; nodetype *head; Pointer Deklarasi head

Singly Linked List Simplest form of linked list Linked list object holds a pointer to the first node in the list Each node object consists of the data object being stored, and a pointer to the next node in the list

Singly Linked List One-way list: each list node has a single pointer to the next node on the list. Misal, alamat node pertama adalah 2000 Node terakhir, pointer menunjuk ke NULL Maka, isi dari head adalah 2000 (head menunjuk node pertama

Singly Linked List head->info = 17 head->link = 2800 head->link -> info =? Penelusuran linked list : gunakan satu pointer bantuan: current nodetype *current = head; current->info =? Maka, current = current -> link :

Singly Linked List - Traversing Penelusuran linked list : current akan menelusuri linked list sampai akhir current = head; while (current!= NULL) { //Process current cout << current->info << " "; current = current->link; } Pointer current menelusuri linked list dan mencetak isinya

Singly Linked List - Insert Inserting node baru pada linked list dapat dilakukan pada tiga posisi: Di depan linked list Di belakang linked list Di tengah linked list Untuk memudahkan, gunakan dua pointer sebagai penanda linked list; head dan tail Head selalu menunjuk node pertama linked list Tail selalu menunjuk node terakhir linked list Gunakanpointer current sebagai penelusur

Singly Linked List Insert Membuat node baru: nodetype* nodebaru (int x){ nodetype *newnode = new nodetype; newnode->info = x; newnode->link= NULL; //selalu menunjuk NULL return newnode; } Tail adalah variabel pointer dengan tipe yang sama dengan head. nodetype *tail; info Link, buat menunjuk NULL

Singly Linked List Insert Depan Jika sebelumnya linked list masih kosong, maka head dan tail akan menunjuk ke NULL Head = tail = NULL; Jika linked list sudah berisi node, maka insert node baru di depan linked list dengan cara: Sambungkan link node baru dengan linked list yang ada Pindahkan posisi head ke depan linked list, posisi tail tetap newnode->link = head; Head = newnode;

Tugas Bangunlah ADT linked list berdasarkan apa yang telah Anda peroleh dari insert depan linked list Operasi / primitif bagi linked list: 1. Inisialisasi linked list (linked list masih kosong) 2. Menentukan apakah linked list masih kosong 3. Mencetak isi linked list. 4. Membuat node baru: insert depan + belakang 5. Menghapus node: delete tengah