Sebelum kita mempelajari lebih lanjut, pastikan anda sudah benar-benar memahami
Fungsi Array Dalam C++. Jika anda sudah memahami materi tersebut, materi ini tidaklah terlalu sulit karena ini hanyalah pengembangan dari Fungsi Array saja. Stack adalah suatu program yang dimana data yang dimasukan terakhir akan dikeluarkan terlebih dahulu.
>> Silakan pindah ke tab Pemrograman C++ <<
>> untuk mendapatkan code program <<
Alogaritma Stack dapat dilihat seperti pada gambar dibawah ini :
Seperti pada gambar, Misalnya kita akan menyusun beberapa alat elektronik yang ada. Untuk menghemat tempat maka akan lebih baik jika kita menumpuknya, dan apabila kita ingin mengambil salah satu dari alat elektronik tersebut maka kita harus mengambilnya dari atas.
Contoh :
Apabila kita ingin mengambil TV yang telah tersusun dengan urutan seperti pada gambar, maka mau tidak mau kita harus mengelurkan Compo dan VCD terlebih dahulu.
Terdapat 2 fungsi utama dalam Stack, yaitu :
1. Push
Fungsi ini adalah fungsi yang digunakan untuk mengisi data, dan data tersebut diisi pada tumpukan paling atas. Untuk penulisan fungsi Push dapat dilihat dibawah ini.
2. Pop
Fungsi ini adalah untuk mengeluarkan data dari yang paling terakhir dimasukan. Untuk penulisan fungsi Pop dapat dilihat dibawah ini.
Keterangan : code "stack[top]" adalah bagian dari array stack dimana dalam fungsi Push nilai top akan terus bertambah, sedangkan pada fungsi Pop nilai top akan selalu berkurang.
>> Untuk lebih jelasnya silakan download contoh program Stack pada tab Pemrograman C++ <<
Ada beberapa fungsi tambahan/pendukung dalam Stack (Boleh digunakan, boleh tidak) :
1. Clear : Digunakan untuk mengosongkan semua data pada Array Stack.
2. IsEmpety : Digunakan sebagai parameter yang bilamana suatu kondisi yang mengatakan bahwa array tersebut kosong.
3. IsFull : Digunakan sebagai parameter yang bilamana suatu kondisi yang mengatakan bahwa array tersebut penuh.
NB : Penulisan Push, Pop, Clear, IsEmpety dan IsFull bisa diganti-ganti sesuai dengan yang anda inginkan karena mereka hanyalah sebuah nama fungsi(Mirip dengan variabel yang bisa diganti-ganti) akan tetapi logika dalam fungsinya harus tetap sama. :)))