Posts

Stack & Queue

STACK (tumpukan)         Suatu tumpukan yang memiliki konsep dimana barang yang masuk terakhir, adalah barang yang nantinya akan keluar terlebih dahulu (Last In Fisrt Out). Contohnya seperti pada penggunaan piring. Piring yang dicuci paling terakhir akan diletakkan di paling atas, kemudian ketika kita akan menggunakan piring, maka kita akan mengambil piring yang terletak di paling atas tersebut.        Stack bisa diimplementasikan secara array dan linked list. Apabila menggunakan array, terdapat batasan. Jika kita booking 9 data, maka hanya bisa isi 9 data. Sedangkan pada penggunaan linked list, unlimited(tidak ada batasan). Selain itu, penggunaan array harus melakukan deklarasi terlebih dahulu. Stack operation : push (x) : menambah data x (yang ditambah adalah data paling atas). pop () : data yang terakhir masuk adalah data yang ditarik. top () : mengambil data paling atas. Dalam penerapan stack terdapat 3 metode: > infix - o...

Linked List

Linked List adalah sebuah struktur data yang digunakan untuk menyimpan sejumlah objek data biasanya secara terurut sehingga memungkinkan penambahan, pengurangan, dan pencarian atas elemen data yang tersimpan dalam senarai dilakukan secara lebih efektif. Terdapat 2 jenis linked list : Single linked list Double linke list Single linked list sekumpulan node yang saling terhubung dengan node lain melalui sebuah pointer. Rangkaian single linked list diawali dengan sebuah head untuk menyimpan alamat awal dan di akhiri dengan node yang mengarah ke null. Single linked list tidak dapat diakses secara langsung, melainkan harus diakses dengan maju satu per satu node, secara sequential. Contoh penerapan single linked list pada bahasa c. #include <stdio.h> #include <stdlib.h> struct data { int angka; struct data *next; }*head, *tail, *current; void pushbelakang (int angka) { current= (struct data*) malloc (sizeof(struct data)); current->angka=angka; if (head==NULL...