SINGLE LINKED LIST (NON CIRCULAR)

dokumen-dokumen yang mirip
KONSEP POINTER DAN LINKED LIST

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

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST

BAB IX LINKED LIST (SENARAI BERANTAI)

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

Array VS Linked List

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

STRUKTUR DATA single linked list non circular

STRUKTUR DATA (2) Single Linked List

Struktur Data II. Single Linked List - Non circular

Tugas Studi Kasus. Linked List SLLNC dengan Head & Tail

LAPORAN PRAKTIKUM IX. Oleh:

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

Pertemuan 3 RECORD. Contoh penggunaan record (dalam program PASCAL) : Type Siswa = record Nama : string[25]; Kelas : 1..6; Nilai : real; end;

Pertemuan 7. REVIEW dan QUIS

Single Linked List (1)

MODUL 6 SINGLE & DOUBLE LINKED LIST

Praktikum Algoritma dan Struktur Data

SENARAI BERANTAI (LINK LIST)

Review : Sifat Implementasi Linear List dengan Array

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

Algoritma dan Struktur Data. Ramos Somya

Algoritma dan Struktur Data

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

ALGORITMA DAN STRUKTUR DATA

REPRESENTASI FISIK LIST LINEAR

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

Tutorial - Single Linked List

BAB IX LINKED LIST (SENARAI BERANTAI)

Algoritma dan Struktur Data. Linked List

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

ALGORITMA & PEMROGRAMAN

List Linear (Linked List) Farah Zakiyah Rahmanti 2014

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

Algoritma dan Struktur Data. Pertemuan 5 Pointer

Linked List 6.3 & 7.3 NESTED LOOP

LIST. Dewi Sartika, M.Kom

PRAKTIKUM ALGORITMA DAN STRUKTUR DATA DOUBLE LINKED LIST CIRCULAR

01. Review Array, Pointer dan Struktur

PERTEMUAN VI POINTER 6.1 Tujuan Praktikum 6.2 Teori Penunjang Pointer

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

Lab. Teknik Informatika Struktur Data 1

BAB II Senarai Berantai (Linked List)

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

04. Single Linked List

List akan disimpan dalam bagian memori komputer yang dinamakan HEAP

A B C D E F. Gambar 1. Senarai berantai dengan 6 simpul

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

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

ARRAY DINAMIS. Type. Pengenal = Simpul Simpul = Type. (Nama var) : ( Type data)

Modul Praktikum Algoritma dan Struktur Data

ALGORITMA DAN PEMROGRAMAN 2. 3 SKS By : Sri Rezeki Candra Nursari

Dinamik Linked List. hari bulan tahun

TIM ASISTEN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN 2017

05. Double Linked List

Pengenalan Struktur Data dan Algoritma

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION

List Berkait(Linked List) Overview. Tujuan Instruksional

LIST BERKAIT(LINKED LIST)

E STRUKTUR DATA & E PRAKTIK STRUKTUR DATA. Pointer & Function. Alfa Faridh Suni, S.T., M.T. PTIK

MODUL. Pointer. Modul Praktikum C++ Dasar Pemrograman Komputer JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK

DIG1G3 Implementasi Struktur Data

Menghapus Pointer Statement yang digunakan untuk menghapus pointer adalah Dispose, yang mempunyai bentuk umum : Dispose(peubah) ;

Algoritma dan Struktur Data. Pertemuan 7 Linked List

Linked List. Bandung 2013

KERUGIAN DAN KEUNTUNGAN LINKED LIST

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

A. TUJUAN PEMBELAJARAN

BAB 10 POINTER 5.1 Tujuan 5.2 Pengertian Pointer Perubah dinamis pointer

Modul Praktikum Algoritma dan Struktur Data BAB 6 LINKED LIST

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

Tipe data dasar merupakan tipe data yang disediakan oleh kompailer, sehingga dapat langsung dipakai Dalam algoritma dan pemrograman yang termasuk dala

A. TUJUAN PEMBELAJARAN

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

Pengenalan Struktur Data. Farah Zakiyah Rahmanti 2014

POINTER. Tim Alpro Teknik Informatika

Algoritma dan Struktur Data. Pertemuan 9 Circular Linked List

Apakah Anda sering kesulitan untuk

Algoritma Pemrograman & Struktur Data

Penambahan Simpul (Node)

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

Algoritma Pemrograman & Struktur Data

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

Algoritma Pemrograman & Struktur Data

Tabel Informasi. Hal di atas dapat dilakukan dengan menambah dan mengambil atribut identifier yang digunakan pada program, melalui tabel informasi.

STRUKTUR DATA. Literatur

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

Array Dimensi Satu. Pendahuluan. Slamet Kurniawan, S.Kom

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

Langkah Mudah Belajar Struktur Data Menggunakan C/C++

TUGAS PENDAHULUAN MODUL 12 PENGENALAN DAN IMPLEMENTASI STRUKTUR DATA STACK

BAB II LANDASAN TEORI. dengan hanya melihat kamus bahasa. Terdapat banyak makna dalam kata game.

Jadi satu simpul di double linked list adalah sebagai berikut : Info. Kiri. Kanan

Pert 2 Struktur Data (mengajarkomputer.wordpress.com) ARRAY DIMENSI 1 & 2

PRAKTIKUM 11 POINTER 1

PRAKTIKUM 11 POINTER 1

Praktikum Algoritma dan Struktur Data 2010

Transkripsi:

SINGLE LINKED LIST (NON CIRCULAR) KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu perubah yang disebut dengan perubah dinamis (Dinamic variable) Perubah Dinamis (Dinamic variable) Suatu perubah yang akan dialokasikan hanya pada saat diperlukan, yaitu setelah program dieksekusi. Perbedaan Perubah Statis & Dinamis Pada perubah statis, isi Memory pada lokasi tertentu (nilai perubah) adalah data sesungguhnya yang akan diolah. Pada perubah dinamis, nilai perubah adalah alamat lokasi lain yang menyimpan data sesungguhnya. Dengan demikian data yang sesungguhnya dapat dimasukkan secara langsung. Dalam hal cara pemasukkan data dapat diilustrasikan seperti dibawah ini. DEKLARASI POINTER Pointer digunakan sebagai penunjuk ke suatu alamat memori Dalam pemrograman C++, Type Data Pointer dideklarasikan dengan bentuk umum : Type Data * Nama Variabel; Type Data dapat berupa sembarang type data, misalnya char, int atau float. Sedangkan Nama veriabel merupakan nama variabel pointer Contoh penggunaan pointer dalam program C++: Void main() { int x,y,*z; x = 75; //nilai x = 75 Eri Mardiani 1

y = x; z = &x; getch(); } //nilai y diambil dari nilai x //nilai z menunjuk kealamat pointer dari nilai x LINKED LIST (LINKED LIST) Salah satu Struktur Data Dinamis yang paling sederhana adalah Linked List atau Struktur Berkait atau Senarai Berantai, yaitu suatu kumpulan komponen yang disusun secara berurutan dengan bantuan Pointer. Linked List (Senarai Berantai) disebut juga dengan Senarai Satu Arah (One-Way List). Masingmasing komponen dinamakan dengan Simpul (Node). Perbedaan Karakteristik Array dan Linked List Setiap simpul dalam suatu Linked List terbagi menjadi dua bagian,yaitu : 1. Medan Informasi Berisi informasi yang akan disimpan dan diolah. 2. Medan Penyambung (Link Field) Eri Mardiani 2

Berisi alamat berikutnya. Bernilai 0, Jika Link tersebut Data (Simpul) lainnya. Penunjuk ini disebut Penunjuk Nol. tidak menunjuk ke Linked list juga mengandung sebuah variabel penunjuk list, yang biasanya diberi nama START(AWAL), yang berisi alamat dari simpul pertama dalam List. Eri Mardiani 3

Bentuk Node Single Linked List non Circular Single : field pointer-nya hanya satu dan satu arah,pada akhir node pointernya menunjuk NULL Linked List : node-node tersebut saling terhubung satu sama lain. Setiap node pada linked list mempunyai field yang berisi pointer ke node berikutnya, dan juga memiliki field yang berisi data. Node terakhir akan menunjuk ke NULL yang akan digunakan sebagai kondisi berhenti pada saat pembacaan isi linked list. Eri Mardiani 4

Deklarasi Node : typedef struct TNode{ int data; TNode *next; }; PEMBUATAN SINGLE LINKED LIST NON CIRCULAR Keterangan: Pembuatan struct bernama TNode yang berisi 2 field, yaitu field data bertipe integer dan field next yang bertipe pointer dari Tnode Setelah pembuatan struct, buat variabel head yang bertipe pointer dari TNode yang berguna sebagai kepala linked list. Digunakan perintah new untuk mempersiapkan sebuah node baru berserta alokasi memorinya, kemudian node tersebut diisi data dan pointer nextnya ditunjuk ke NULL. TNode *baru; baru = new TNode; baru->data = databaru; baru->next = NULL; Single Linked List non Circular Menggunakan Head Dibutuhkan satu buah variabel pointer : head yang akan selalu menunjuk pada node pertama Setiap node pada linked list mempunyai field yang berisi pointer ke node berikutnya, dan juga memiliki field yang berisi data. Node terakhir akan menunjuk ke NULL yang akan digunakan sebagai kondisi berhenti pada saat pembacaan isi linked list. Eri Mardiani 5

Menambah Node di Depan Penambahan node baru akan dikaitan di node paling depan, namun pada saat pertama kali (data masih kosong), maka penambahan data dilakukan dengan cara: node head ditunjukkan ke node baru tersebut. Prinsipnya adalah mengkaitkan node baru dengan head, kemudian head akan menunjuk pada data baru tersebut sehingga head akan tetap selalu menjadi data terdepan. Eri Mardiani 6

Menambah Node di Belakang Penambahan data dilakukan di belakang, namun pada saat pertama kali, node langsung ditunjuk oleh head. Penambahan di belakang membutuhkan pointer bantu untuk mengetahui node terbelakang. Kemudian, dikaitkan dengan node baru. Untuk mengetahui data terbelakang perlu digunakan perulangan. Eri Mardiani 7

Eri Mardiani 8