Apa itu Struktur Data Stack ?
Stack secara bahasa artinya tumpukan.Stack dalam bahasa pemrograman ini mengacu kepada tumpukan di dunia nyata seperti tumpukan buku,tumpukan piring.tumpukan ban,dll.Mungkin sampai sini anda sudah punya Stack itu seperti apa
Misalkan kita punya tumpukan piring dan kita ingin menambahkan piring lagi ke tumpukan itu.Kemana kita akan menempatkannya ? Tentu saja di paling atas bukan yang mudah penempatannya.Nah,operasi menambahkan elemen ke bagian atas ini disebut dengan Push
Sekarang sebaliknya kalau kita ingin mengambil piring,piring mana yang akan kita ambil ? Tentu saja piring paling atas bukan ? Karena kalau kita mengambil piring yang tidak berada paling atas ,maka piring disekitarnya akan jatuh dan menimbulkan bunyi atau bahkan kasus paling parahnya bisa-bisa piringnya ada yang pecah.Nah,operasi mengambil elemen dari bagian atas disebut dengan Pop
Dalam stack dikenal algoritma LIFO (Last In First Out) maksudnya yang terakhir masuk akan dikeluarkan pertama kali,Untuk contohnya sudah saya contohkan seperti di atas
Operasi Pada Stack
Operasi dasar pada Stack adalah sebagai berikut :
- push(),menambahkan elemen ke dalam stack
- pop(),mengambil elemen dari dalam stack
- peek(),mendapatkan elemen teratas stack tanpa menghapusnya
- isEmpty(),mengecek apakah stack kosong
Implementasi Stack dan Operasinya
Kita memakai bahasa Python saja yang lebih simple contoh kodenya sebagai berikut
class Stack(object): def __init__(self): self.items = [] def isEmpty(self): return len(self)==0 def __len__(self): return len(self.items) def peek(self): assert not self.isEmpty(),"Stack sedang kosong" return self.items[-1] def pop(self): assert not self.isEmpty(),"Stack sedang kosong" return self.items.pop() def push(self,data): self.items.append(data) return self.items
Kita tes dengan menjalankan kode tersebut
Kalau untuk bahasa yang lain kurang lebih sama saja tinggal dirubah-rubah sedikit sesuai dengan bahasa pemrograman nya
Mungkin itu saja ya postingan tentang tipe data Stack.Mudah-mudahan anda paham karena Stack ini bukan hal yang berat untuk dipahami.Semoga bisa bermanfaat bagi anda dan bye..
Post a Comment for "Apa itu Struktur Data Stack ?"
Jangan spam atau promosi di sini jgn juga taruh link aktif kalau mau dapat backlink bisa taruh di profil saja (Name/URL)