Stack

Jika pengen liat lebih jelasnya silahkan click disini Stack

Struktur data dengan C++

Struktur data dengan stack

Stack adalah struktur data yagn sifatn ya LIFO (Last In First Out), yaitu yang masuk belakangan akan keluar duluan. Dalam kehidupan sehari-hari dapat kita jumpai contoh stack seperti : tumpukan buku, tumpukan koin , dan lain lain.

Dalam struktur data stack ada dua operasi yang digunakan pada stack, yaitu operasi push dan operasi pop. Operasi push merupakan operasi memasukkan elemen ke dalam stack, sedangkan operasi pop merupakan operasi mengeluarkan elemen ke dalam stack.

Berikut ini contoh implementasi program stack dengan array.

Deklarasi Class

#include<“iostream.h”>

#include<“conio.h”>

#include<“stdio.h”>

#define max_stack 10

class Stack

{

private:

char data[max_stack];

int top;

public:

Stack(){ top = -1;}

int isFull();

int isEmpty();

void push();

void pop();

void print();

};

Implementasi method isFull() dan isEmpty().

Method isEmpty() digunakan untuk mengecek apakah stack dalam keadaan kosong atau sudah berisi, sedangkan method isFull() digunakan untuk mengecek apakah stack sudah dalam keadaan penuh.

int Stack :: isFull()

{

if (top == max_stack -1 ) return 1;

else

return 0;

}

int Stack :: isEmpty()

{

if(top == -1) return 1;

else return 0 ;

}

Implementasi Method push() dan pop()

Seperti sudah dijelaskan seb elumnya method push() digunakan untuk menambah elemen di dalam stack, sedangkan method pop() digunakan untuk mengeluarkan elemen di dalam stack.

void Stack :: push()

{

char insert;

int i ;

cout << “Much of data : “;

cin >> i;

if( i > max_stack -1) cout << “Out Of Range”; cout << endl;

for(int j = 0;j<=i-1;j++)

{

cout << “insert data : “;

cin >> insert;

top++;

data[top] = insert;

}

getche();

}

void Stack :: pop()

{

cout << “Insert Index Data : “;

cin >> top;

cout << “Data Deleted : ” << data[top] << endl;

top–;

}

Implementasi Fungsi pri nt()

Fungsi print() digunakan untuk mencetak isi di dalam stack

void Stack :: print()

{

for(int i = top ; i>=0;i–)

{

cout << “Data ” << i << ” “<< data[i] << endl;

}

getche();

}

Sepertinya hanya itu saja yang bisa saya share dari materi struktur data yang pernah saya dapatkan , jika teman-teman semua ada yang mau menambahkan atau memperbaikinya silahkan berikan komentar,,,,OK!!^_^

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: