8. Singly Linear Linked List

Slides:



Advertisements
Presentasi serupa
Double Linked List.
Advertisements

Single linked list.
STRUKTUR DATA (7) single linked list circular
STRUKTUR DATA (8.1) double linked list non circular
LINKED LIST.
Mata Kuliah : Struktur Data Pertemuan : V
LINKED LIST Single Linked List.
LINKED LIST.
Linked List Pembuatan Simpul Awal.
LINK LIST Latifah Rifani.
Algoritma dan Struktur Data Daniel Riano Kaparang.
SENARAI BERANTAI TUNGGAL
Queue.
Komentar, Identifier dan Tipe Data
STACK.
STRUKTUR DATA (6) single linked list non circular
Class.
Single Linked List Yuliana Setiowati, S.Kom.
BY YOHANA N Sumber Kepustakaan : yohananugraheni.files.wordpress.com/.../linked- lis... 1 LINKED LIST.
Algoritma & Struktur Data Linked List Evangs Mailoa.
Pointer Dr. Lily Wulandari.
POINTER (VAR.PENUNJUK)
Pertemuan 22 POINTER Bag.2 Dasar Pemrograman Renni Angreni, S.Kom.
LINKED LIST by Yohana N.
Struktur Data List Linear : Linked List (Double Linkedlist)
Linear Data Structures (Linked List). Node Link atau pointer data field.
Algoritma dan Struktur Data
Pertemuan ketujuh Struktur data st3telkom.ac.id
Teknik Pemrograman Terstruktur Linked lis & Inheritance 1/12 Pointer (Lanjutan…) Pemrograman Berorientasi Objek.
Struktur Data List Linear : Linked List (Single Linkedlist)
LINKED LIST.
Struktur Data (Data Structure) – IS 2313
POINTER Bag.2 Pertemuan 22 Dibuat oleh : Renni Angreni, S.Kom. Triana Elizabeth, S.Kom.
1 Pertemuan 3 Data Komposit Linked list Matakuliah: T0026/Struktur Data Tahun: 2005 Versi: 1/1.
Algoritma dan Struktur Data
Algoritma dan Struktur Data
LINK LIST “Suatu cara menyimpan data dengan terstruktur sehingga programmer dapat secara otomatis menciptakan suatu tempat baru didalam memori komputer.
Pertemuan Linked list jual [Valdo] Lunatik Chubby Stylus.
Pertemuan 9 Stack dengan Linked-list
ADT DINAMIS : SINGLY LINKED LIST DAN DOUBLE LINKED LIST
SENARAI BERANTAI TUNGGAL
Double linked list non circular
Struktur Data Linked List
STRUKTUR DATA (2) Single Linked List
STRUKTUR DATA Linked List Oleh : Yuli Praptomo PHS, S.Kom.
STRUKTUR DATA Linked List
LINKED LIST by Yohana N.
Single Linked List.
Informatique Engineering Ahmad Dahlan University May 17, 2004
12. Doubly Linear Linked List
Algoritma dan Struktur Data
Struktur.
11. Singly Circular Linked List
Linked List BEBERAPA CONTOH SOAL 6.3 & 7.3 NESTED LOOP.
C++ static.
Doubel Linked List.
STRUKTUR DATA (7) single linked list circular
Linked List 6.3 & 7.3 NESTED LOOP.
Doubel Linked List.
Single Linked List Circular (SLLC)
QUEUE (ANTRIAN) Queue atau antrian didefinisikan sebagai kumpulan dari obyek-obyek yang homogen dengan operasi penambahan elemen (Enqueue) dan pengambilan.
Data Structure + Algorithm = Program
LINKED LIST by Yohana N Sumber Kepustakaan : yohananugraheni.files.wordpress.com/.../linked-lis...
Algoritma dan Struktur Data
STRUKTUR DATA (8.2) double linked list circular
Double Linked List.
Variable Static & Linked List
C++ Polymorphism.
Linked List DELETE TENGAH 6.3 & 7.3 NESTED LOOP.
SINGLE LINKED LIST (SLL)
Transcript presentasi:

8. Singly Linear Linked List Data Structure + Algorithm = Program UNIV. INDONUSA Esa Unggul

UNIV. INDONUSA Esa Unggul Apakah Linked List? Linked list merupakan sekumpulan item di mana masing-masing item adalah bagian dari suatu node yang juga mengandung suatu link ke suatu node . Visualisasi sebuah node: item link UNIV. INDONUSA Esa Unggul

Apakah Linked List? (Lanjutan) Dibandingkan dengan array, sebuah linked list memiliki keuntungan berupa kemampuan untuk mengatur-ulang item-item secara efisien. Let’s make our hands dirty! UNIV. INDONUSA Esa Unggul

UNIV. INDONUSA Esa Unggul Data Structure Di bawah ini diberikan struktur untuk suatu singly linear linked list: struct node{ int data; // item node* next; // a link }; UNIV. INDONUSA Esa Unggul

Data Structure (Lanjutan) class linklist{ private: node* head; public: linklist(){ head = NULL; } // operasi pada linked list }; UNIV. INDONUSA Esa Unggul

Data Structure (Lanjutan) Di sini, struct node menyatakan sebuah node, sedangkan link itu sendiri yang menunjuk ke suatu node diimplementasikan sebagai pointer ke node (node*). Visualisasi: head NULL UNIV. INDONUSA Esa Unggul

Operasi pada Linked List Terdapat beberapa operasi utama pada struktur ini, diantaranya yaitu: menambahkan node, mencari suatu node dengan nilai item tertentu, menghapus node, mengubah nilai item suatu node, memindahkan suatu node, dan mengurutkan node berdasarkan nilai item. Semua node di dalam suatu list dapat dikunjungi dengan mengetahui pointer yang menunjuk ke node pertama (head). UNIV. INDONUSA Esa Unggul

Operasi pada Linked List (Lanjutan) Sebagai contoh di sini akan diberikan kode lengkap untuk menambahkan suatu item sebagai head dan menampilkan semua item suatu list: #include <iostream> using namespace std; struct node{ int data; node* next; } UNIV. INDONUSA Esa Unggul

Operasi pada Linked List (Lanjutan) class linklist{ private: node* head; public: linklist(){ head = NULL; } void additem(int d); void display(); }; UNIV. INDONUSA Esa Unggul

Operasi pada Linked List (Lanjutan) void linklist::additem(int d){ node* newlink = new node; newlink->data = d; newlink->next = head; head = newlink; } void linklist::display(){ node* current = head; while(current!=NULL){ cout << current->data << endl; current = current->next; UNIV. INDONUSA Esa Unggul

Operasi pada Linked List (Lanjutan) int main(){ linklist li;   li.additem(1456); li.additem(5); li.additem(9); li.additem(19); li.additem(71); li.display(); return 0; } UNIV. INDONUSA Esa Unggul

UNIV. INDONUSA Esa Unggul Penjelasan Pernyataan linklist li; menginstansiasi objek dengan nama li, dan memanggil konstruktor: linklist(){ head = NULL; } UNIV. INDONUSA Esa Unggul

Penjelasan (lanjutan) , sehingga pada saat itu list adalah kosong: Penyataan: li.additem(1456); akan menambahkan sebuah node dengan nilai item 1456 ke dalam list tersebut: head NULL UNIV. INDONUSA Esa Unggul

Penjelasan (lanjutan) node* newlink = new node; Ekspresi new node akan meminta alokasi memori sebesar node. Kemudian alamat dari memori yang dialokasikan tersebut disimpan ke dalam variabel bertipe pointer-to-node yang bernama newlink. UNIV. INDONUSA Esa Unggul

Penjelasan (lanjutan) Misal alamat tersebut FFFF0001: newlink = FFFF0001 newlink node FFFF0001 newlink FFFF0001 node UNIV. INDONUSA Esa Unggul

Penjelasan (lanjutan) newlink->data = d; Mengisi nilai item dengan d, yaitu 1456, newlink 1456 UNIV. INDONUSA Esa Unggul

Penjelasan (lanjutan) newlink->next = head; Mengisi nilai next dari node yang ditunjuk oleh newlink dengan nilai head, yaitu NULL: newlink 1456 NULL UNIV. INDONUSA Esa Unggul

Penjelasan (lanjutan) head = newlink; Akan membuat head bernilai FFFF0001 atau dengan kata lain menunjuk ke node yang ditunjuk oleh newlink: head 1456 NULL UNIV. INDONUSA Esa Unggul

UNIV. INDONUSA Esa Unggul Delete Jika ptr adalah sebuah pointer-to-node maka pernyataan delete ptr; Akan menghapus/mendealokasikan node yang ditunjuk oleh ptr tersebut. UNIV. INDONUSA Esa Unggul

UNIV. INDONUSA Esa Unggul Hi Einstein! Buat algoritma (member fungsi) untuk menghapus sebuah node. Buat algoritma untuk memindahkan item terbesar pada sebuah list menjadi node terbelakang pada list tersebut. Buat algoritma untuk memindahkan item terkecil pada sebuah list menjadi node terdepan pada list tersebut. UNIV. INDONUSA Esa Unggul