Class Stack menggunakan linked list

haaii... assalamualaikum wr. wb. jumpa lagi dengan sayaaa..
pada kesempatan kali ini saya akan membagikan sebuah class yang bisa saya katakan unik. karena class ini merupakan linked list. pada umumnya stack menggunakan list. namun saya buat mengunakan linked list.

Penjelasan mengenai Linked list.

oya, berikut saya akan menjelaskan apa itu link list dan apa itu stack. nah, saya akan memulai dengan menjelaskan dulu apa itu linked list. "linked list bisa kita katakan juga sebagai rantai. karena linked list adalah struktur data yang terdiri dari urutan - urutan elemen yang saling terhubung satu sama lain yang membentuk seperti rantai. dimana setiap elemennya memiliki alamat yang menyimpan alamat dari elemen selanjutnya". sehingga di dalam setiap elemen terdapat dua informasi.. yaitu isi dari setiap elemen dan juga alamat elemen selanjutnya.

Penjelasan mengenai stack.

nah selanjutnya saya akan mencoba untuk menjelaskan apa itu yang di maksud dengan stack. "stack merupakan list yang dapat kita analogikan seperti tumpukan piring.  sehingga, jika kita ingin menambah data, kita harus menambahkan data dari atas. sedangkan untuk menghapus nya, kita juga harus menghapusnya dari bagian atas juga." nah itu dia temen - temen.. penjelasan mengenai linked list dan stack.

jika kalian belum paham, maka kalian bisa mencari penjelasan lebih lanjut mengenai stack dan linked list di google. kalian bisa mencari informasi yang kalian perlukan dari stack maupun linked list disana. saya yakin sudah banyak para blogger yang sudah membahas mengenai dua materi di atas. yaitu linked list dan stack.

nah, class stacklink ini bisa kalian manfaatkan seperti class Stack pada umumnya. tidak ada peebedaan sedikitpun tentang cara menggunakan stack yang terbuat dari linked list ini. jadi, stack link  ini hanya memiliki keunikan saja. yaitu terbuat dari linked list bukan dari list bawaan python sendiri. nah, karena linked list buka bawaan python, maka kita harus membuat kodingannya secara manual. dan dengan begitu, dampanya adalah, code kita akan semakin panjang.

Code program class Stack menggunakan linked list.

oya.. setelah membahas tentang penjelasan tentang linked list dan stack, maka selanjutnya kita langsung ke pembahasan utama kita. yaitu "class stack menggunakan linked list". okee.. langsung saja saya berikan code programnya... ini dia code nya..



class Node:  
    def __init__ (self, initdata):         
        self.data = initdata         
        self.next = None  
    def getData(self):         
        return self.data  
    def getNext(self):         
        return self.next  
    def setData(self, newdata):         
        self.data = newdata  
    def setNext(self, newnext):         
        self.next = newnext 
    

class Stacklinked():
    def __init__(self) :
        self.head = None

    def isempty (self):
        return self.head == None

    def push (self,item):
        current = self.head         
        previous = None                 
        while current != None:                              
            previous = current                 
            current = current.getNext()  
        temp = Node(item)                     
        temp.setNext(self.head)             
        self.head = temp         
        
    def pop(self):
        current = self.head                     
        self.head = current.getNext()
        return current.getData()         
    
    def peek(self):
        return self.head.getData()
    
    def size(self):         
        current = self.head         
        count = 0         
        while current != None:             
            count = count + 1             
            current = current.getNext()  
        return count
            
'''
Created on May 4, 2016

@author: Moham villa apdg
'''

nah itu dia code programnya..  nah untuk membuktika kalau class stack linked ini sama seperti pada stack pada umumnya, saya akan memberikan contoh screenshoot penggunaan class stack ini. oke.. langsung saja.. ini dia screenshootnya..



nah itu dia screenshoot contoh penggunaan stacklinked dengan program code di atas. sama kan dengan class stack pada umumnya.. tentu saja sama.. tidak ada perbedaan sama sekali.. kekurangannya hanya terletak pada code programnya saja yang cukub banyak.. karena kita hsrus membuat licked list terlebih dahulu. jadi pada program diatas, terdapat 2 class yang saya kombinasikan.

kalian dapat copy lau paste program ini pada IDLE python. atau bisa juga di jalankan pada compiler python lainnya kemudian dapat langsung menjalankannya. jika ada yang ingin ditanyakan, silahkan berkomentar dibawah postingan ini ya...  apabila saya bisa, insyaallah saya jawab.

kemudian, apabila ada error kalian juga bisa bertanya dikomentar. namun sebelum saya posting, saya sudah tes program ini kok. jadi, kecil kemungkinan program ini akan terjadi error. kecuali kalian merubah susunan code nya. maka saya  tidak bisa menjamin lagi.

sekian dari saya dan mohon maaf atas kekurangannya ya... karena saya masih Newbie.  jangan lupa di bagikan ketemen - temen kalian ya... dan semoga saja dapat bermanfaat bagi temen - temen yang membutuhkan.. baik yang membutuhkan referensi buat tugas, maupun yang membutuhkan untu referensi belajar python kalian.... sekali lagi semoga bermanfaat...  terimakasih wassalamualaikum wr. wb. :)
Previous
Next Post »
Thanks for your comment