Sunday 11 January 2015

Pengertian Stack yang memakai tipe data arry

Stack atau Tumpukan

            adalah suatu stuktur data yang penting dalam pemrograman yang mempunyai sifat LIFO (Last In First Out), Benda yang terakhir masuk ke dalam stack akan menjadi benda pertama yang dikeluarkan dari stack.  Stack (Tumpukan) adalah list linier yang dikenali elemen puncaknya (TOP) dan Aturan penyisipan dan penghapusan elemennya tertentu. Penyisipan selalu dilakukan “di atas“  TOP dan Penghapusan selalu dilakukan pada TOP.

 Conto:

package semester2;
import java.io.*;

/**
 *
 * @authorARIS
 */
public class stack {
   public static class StackArray{
                private int maxsize; //penentu batas elemen stack maksimum
                private double [] stackarray; //array untuk menyimpan stack
                private int top; //indeks array
                public void inisiasi(int s) //menentukan ukuran kapasitas stack
            {
                    maxsize = s;
                        stackarray = new double [maxsize];
                        top = -1;
                    }
    public void push(double data){ //untuk memasukan data paling atas
            if (top>=maxsize-1)
                    System.out.println("Stack Penuh. "+data+" Tidak Bisa Masuk");
                else
                {
                    top++;
                    stackarray[top] = data;
                    System.out.println(data +" Masuk ke Stack");
            }
        }
    public double pop(){ //Untuk mengambil objek poling atas
                double temp;
                    if (top>=0){
                    temp = stackarray[top];
                    System.out.println(temp + " Keluar dari Stack");
                        top--;
                        return (temp);
                    }
                    else
                {
                    System.out.println("Stack Sudah Kosong");
                        return(-1);
                }
                }
    public void view(){
                System.out.print("Isi Stack: ");
                        for(int i=0; i<=top; i++)
                    System.out.print(stackarray[i] + " ");
                    System.out.println();
            }
    public static void main(String[] args){
   
            StackArray stack = new StackArray();
                stack.inisiasi(3);
                stack.push(3);
                stack.push(4);
                stack.push(2);
                stack.view();
                stack.push(5);
                stack.push(1);
                stack.pop();
                stack.pop();
                stack.view();
                stack.pop();
                stack.pop();
                stack.pop();
                stack.push(6);
                stack.push(8);
                stack.push(7);
                stack.push(9);
                stack.pop();
                stack.view();
}
}
   
}

No comments:

Post a Comment