Stack dengan C++
Stack adalah salah satu jenis struktur data yang menggunakan konsep LIFO [ Last in First Out ]. Dengan konsep ini pengambilan data akan berkebalikan urutannya dengan penyimpanan data. Dalam membuat Stack terdapat dua cara yaitu dengan Array dan Linked List. Pemilihan cara dalam membuat Stack tergantung dengan permasalahan yang dihadapi.Ada 2 operasi dasar pada Stack yaitu Push dan Pop. Push digunakan untuk memasukkan data kedalam Stack sedangkan Pop digunakan untuk mengeluarkan data dari Stack. Ilustrasi sederhana Stack
Stack
Berikut ini implementasi sederhana Stack menggunakan Linked List dan dalam bahasa pemrogramman C++. Sedangkan tool yang saya gunakan adalah CodeBlocks 8.02
#include
using namespace std;
struct node{
int data;
node *link;
};
class Stack{
private:
node *top;
public:
Stack[]{
top=NULL;
}
void pushValue[int i];
int popValue[];
void viewTop[];
void viewAll[];
~Stack[]{
if[top == NULL]
return;
node *temp;
while[top != NULL]
{
temp = top;
top = top->link;
delete temp;
}
}
};
void Stack::pushValue[int i]
{
node *temp;
temp = new node;
temp->data = i;
temp->link = NULL;
if[ top == NULL]
{
top = temp;
}
else
{
temp->link = top;
top = temp;
}
}
int Stack::popValue[]
{
node *temp;
int n;
if[ top == NULL]
{
cout