Algoritma & Struktur Data 2. P-6 Fery Updi, M.Kom

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

BAB II STACK (TUMPUKAN)

STACK atau TUMPUKAN. Pertemuan 5 STACK (TUMPUKAN)

Algoritma Pemrograman & Struktur Data

Materi 8 : STACK (TUMPUKAN) Dosen:

Modul Praktikum Algoritma dan Struktur Data

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

MODUL IV STACK A. TUJUAN

Algoritma Dan Struktur Data II

Algoritma dan Struktur Data STACK

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II. Tujuan Pembelajaran : Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Stack.

STACK. Sistem penyimpanan data dengan mekanisme Last In First Out( LIFO).

STRUKTUR DATA POKOK BAHASAN - 7 STACK ( TUMPUKAN )

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

DIG1G3 Implementasi Struktur Data

Tumpukan (Stack) Stack bersifat LIFO (Last In First Out) LIFO Data yang terakhir masuk ke dalam stack menjadi data yang pertama keluar dari stack

LIST. Dewi Sartika, M.Kom

Struktur Data. Tumpukan : Definisi & Operasi. Pertemuan 4 PROBLEM ALGORITHM DATA IMPLEMENTATION. Pert. 4b Struktur Data - FMIPA USD

S T A C K ( T U M P U K A N )

PRAKTIKUM ALGORITMA & PEMROGRAMAN III MODUL_06 Stack (Tumpukan)

Single Linked List (1)

BAB 3 STACK (TUMPUKAN)

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

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

KONSEP POINTER DAN LINKED LIST

Pertemuan 7. REVIEW dan QUIS

Struktur Data Array. Rijal Fadilah S.Si

ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE

List Linear (Linked List) Farah Zakiyah Rahmanti 2014

BAB IX LINKED LIST (SENARAI BERANTAI)

POINTER STACK DAN QUEUE. Institut Teknologi Sumatera

S TA C K Sunu Wibirama

IF PEMROGRAMAN LANJUT TUGAS 1. Oleh : Andri Heryandi, M.T.

LIST LINIER & STACK. Pertemuan 6 Yani sugiyani, M.Kom

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

Stack. Gambar 1.1 Stack

Lab. Teknik Informatika Struktur Data 1

PRAKTIKUM ALGORITMA DAN STRUKTUR DATA MODUL KE-2 STACK DAN QUEUE

STRUKTUR DATA Pertemuan 1 s.d 8

IX. Implementasi ADT : Stacks & Queues. Operasi dasar Contoh kegunaan Implementasi Array-based dan linked list-based

KONSEP POINTER DAN LINKED LIST

Pendahuluan Struktur Data. Nisa ul Hafidhoh

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

E STRUKTUR DATA & E PRAKTIK STRUKTUR DATA. Stack using Array. Alfa Faridh Suni, S.T., M.T. PTIK

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

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

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST

Algoritma dan Struktur Data. Ramos Somya

STACK DAN QUEUE (Muhammad Fachrie, STMIK Amikom Yogyakarta)

PRAKTIKUM STRUKTUR DATA QUEUE. SULIDAR FITRI, M.Sc

4. STACK / TUMPUKAN TEORI PENUNJANG

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

STACK (TUMPUKAN) & QUEUE (ANTRIAN) Altien Jonathan Rindengan, S.Si., M.Kom.

Algoritma dan Struktur Data

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

Algoritma Dan Struktur Data II. Queue

Algoritma Dan Struktur Data II

*Sekumpulan elemen yang diatur secara terurut. *Linear List tidak sama dengan Connected-List

BAB II STACK Atau TUMPUKAN

Algoritma dan Struktur Data. Pertemuan 7 Linked List

STACK/TUMPUKAN. R. Denny Ari Wibowo, S.Kom STMIK BINA NUSANTARA JAYA LUBUKLINGGAU

STACK (Tumpukan) Tumpukan Koin. Tumpukan Kotak

STACK (TUMPUKAN) Secara sederhana, sebuah tumpukan bisa kita ilustrasikan seperti gambar berikut.

Algoritma dan Struktur Data. Pertemuan 9 Circular Linked List

LAPORAN PRAKTIKUM IX. Oleh:

MODUL 6 SINGLE & DOUBLE LINKED LIST

Linked List 6.3 & 7.3 NESTED LOOP

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II. : Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Queue.

1. Kompetensi Mengenal dan memahami struktur data Stack (tumpukan) dan Queue (antrian).

(3) BAHAN KAJIAN (materi ajar)

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

Linked List dan Implementasinya dalam Bahasa Java

Tumpukan(Stack)!! " # $ %&' $ %& ( ) ( * +, / ( (

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK

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

STRUKTUR DATA. Literatur

STRUKTUR DATA (2) Single Linked List

Materi 9 : QUEUE (ANTREAN) Dosen:

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

A. TUJUAN PEMBELAJARAN

04. Single Linked List

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

MODUL PRAKTIKUM STRUKTUR DATA

LOGO STRUKTUR DATA QUEUE

SINGLE LINKED LIST (NON CIRCULAR)

Algoritma dan Struktur Data. Ramos Somya

LAPORAN PRAKTIKUM RESMI QUEUE

BAB II Senarai Berantai (Linked List)

STACK ATAU TUMPUKAN 3.1 DAFTAR LINEAR

Array VS Linked List

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

Operasi File. Chapter 13

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

A. TUJUAN PEMBELAJARAN

5. QUEUE (ANTRIAN) TUJUAN PRAKTIKUM

Praktikum Algoritma dan Struktur Data

Gambar 1. Single Linked List

TUGAS PENDAHULUAN MODUL 12 PENGENALAN DAN IMPLEMENTASI STRUKTUR DATA STACK

Transkripsi:

Algoritma & Struktur Data 2 P-6 Fery Updi, M.Kom 1

Capaian Kompetensi Mahasiswa mampu: 1. Memahami konsep Stack 2. Menjelaskan apa yang dimaksud dengan stack dan aplikasinya 2

Pokok Bahasan Stack 3

Stack Stack merupakan suatu struktur data yang memiliki sifat Last In First Out (LIFO). Seperti kata stack yang berarti tumpukan, stack dapat dianalogikan seperti suatu tumpukan. Tumpukan tersusun dari bawah ke atas, dengan setiap elemen yang baru selalu diletakkan di bagian paling atas tumpukan. Analogi dari stack dapat dilihat di gambar berikut:

Stack Sesuai namanya, struktur data ini digambarkan seperti keadaan tumpukan piring atau tumpukan buku. Cara yang paling mudah untuk meletakkan piring ke dalam tumpukan yakni dengan menaruhnya di bagian puncak. Begitu juga kalau Anda ingin mengambil piring. Piring diambil dari data yang berada di puncak tumpukan.

Stack

Stack Tumpukan memiliki sifat Last In First Out (LIFO). Artinya, data yang terakhir kali dimasukkan/disisipkan akan menjadi data yang pertama kali keluar. Pada contoh di atas, yang berisi tumpukan A, B, dan C jelas terlihat bahwa C adalah data yang terakhir kali ditumpukkan. Jika terjadi operasi pengambilan data maka C adalah data yang akan keluar terlebih dulu.

Operasi dasar pada tumpukan (Stack) adalah PUSH dan POP 1. Push (insert) Pada stack, proses insert elemen baru dinamakan push. Proses push selalu meletakkan elemen baru di atas elemen yang paling atas (top). 2. Pop (delete) Pada stack, proses delete elemen dinamakan pop. Proses pop selalu menghapus elemen yang terletak paling atas (top). Elemen yang dihapus oleh proses pop dikembalikan (return). Agar dapat digunakan oleh baris yang memanggil proses pop.

cara kerja stack dapat di ilustrasikan sebagai berikut: D ---> atas C B A ---> bawah Anggaplah gambar diatas sebagai tumpukan data, D sebagai node(struktur) yang atas (terkhir dimasukkan) dan A sebagai node yang bawah (pertamakali dimasukkan). Jika kita melakukan operasi Push (menambah), misalnya E, maka penambahan akan dilakukan pada nilai yang paling atas, yaitu D, sehingga menjadi:

E ---> atas D C B A ---> bawah Sehingga nilai E menjadi nilai atas yang baru, dan jika dilakukan operasi pop (delete), maka stack akan menjadi seperti gambar yang pertama diatas, yaitu nilai D menjadi nilai atas, dan nilai E akan dihapus dari tumpukan (stack).

Operasi-operasi stack secara lengkap adalah sebagai berikut : 1. Pendeklarasian stack Proses pendeklarasian stack adalah proses pembuatan struktur stack dalam memori. Karena stack dapat direpresentasikan dalam 2 cara, maka pendeklarasian stack pun ada 2 yaitu :

a. Pendeklarasian stack yang menggunakan array. Suatu stack memiliki beberapa bagian yaitu: top yang menunjuk posisi data terakhir (top) elemen yang berisi data yang ada dalam stack. Bagian ini lah yang berbentuk array. maks_elemen yaitu variable yang menunjuk maksimal banyaknya elemen dalam stack. Dalam bahasa C, pendeklarasiannya adalah :

b. Pendeklarasian stack yang menggunakan single linked list Adapun stack yang menggunakan single linked list, hanya memerlukan suatu pointer yang menunjuk ke data terakhir. Setiap elemen linked list mempunyai 2 field yaitu elemen datanya dan pointer bawah yang menunjuk posisi terakhir sebelum proses push. Pendeklarasian dalam bahasa C adalah :

2. Inisialisasi Inisialisasi stack adalah proses pembuatan suatu stack kosong. Adapun langkah-langkah proses tersebut berdasarkan jenis penyimpanannya adalah : a. Inisialisasi stack yang menggunakan array. b. Inisialisasi stack yang menggunakan single linked list

a. Inisialisasi stack yang menggunakan array. Proses inisialisasi untuk stack yang menggunakan array adalah dengan mengisi nilai field top dengan 0 (nol) jika elemen pertama diawali dengan nomor 1. Kalau elemen pertama array dimulai dengan 0 (contoh bahasa C), maka top diisi dengan nilai -1. Implementasinya dalam bahasa C adalah :

b. Inisialisasi stack yang menggunakan single linked list Proses inisialisasi untuk stack yang menggunakan single linked list adalah dengan mengisi nilai pointer stack dengan NULL. Implementasi dalam bahasa C adalah :

3. Operasi IsEmpty Operasi ini digunakan untuk memeriksa apakah stack dalam keadaan kosong. Operasi ini penting dilakukan dalam proses pop. Ketika suatu stack dalam keadaan kosong, maka proses pop tidak bisa dilakukan. Adapun langkah-langkah operasi ini adalah : a. Operasi IsEmpty pada stack yang menggunakan array. b. Operasi IsEmpty pada stack yang menggunakan single linked list.

a. Operasi IsEmpty pada stack yang menggunakan array. Operasi ini dilakukan hanya dengan memeriksa field top. Jika top bernilai 0 (untuk elemen yang dimulai dengan index 1) atau top bernilai -1 (untuk elemen yang dimulai dengan index 0), maka berarti stack dalam keadaan empty (kosong) yang akan mereturn-kan true (1) dan jika tidak berarti stack mempunyai isi dan me-return-kan nilai false (0). Implementasi dalam bahasa C adalah : int isempty(tstack stack) { if (stack.top==-1) return 1; else return 0; } Cara penggunaannya adalah : //Penggunaan isempty dalam statement if if( isempty(stack) )...

b. Operasi IsEmpty pada stack yang menggunakan single linked list. Operasi IsEmpty pada stack yang menggunakan single linked list adalah dengan memeriksa apakah pointer stack bernilai NULL. Jika stack bernilai NULL maka menandakan stack sedang keadaan empty (kosong) dan akan me-return-kan nilai 1 dan jika tidak NULL maka menandakan stack mempunyai isi (tidak kosong) sehingga operasi tersebut akan me-returnkan nilai false (0). Implementasinya dalam bahasa C adalah : int isempty(pstack stack) { if (stack==null) return 1; else return 0; }

Stack

Stack

Stack

Output Stack TUGAS Dari Output diatas coba anda masukkan angka (6, 1, 8, 2, 5) dengan memilih pilihan nomor 2 masukan angka 6 lakukan hal yg sama hingga angka 5, lalu pilih nomor 1, lalu pilih nomor 3, dan lalu pilih nomor 4, dan terakhir nomor 5 setiap langkah-langkah tersebut screenshot dalam bentuk file pdf kirim ke email: updi.fery@gmail.com dengan Subject/topic : Tugas Stack Unpri Nama_mhs, paling lambat 23 April 2018 jam 00.00 Wib

24