Tumpukan adalah struktur data linier yang mengikuti prinsip LIFO. LIFO adalah singkatan dari last in first out yang berarti bahwa item yang paling baru ditambahkan adalah yang pertama dihapus. Struktur data ini dinamai tumpukan sebagai analogi dengan tumpukan dunia nyata, misalnya, tumpukan kue di toples kue atau tumpukan buku di rak buku. Pada stack penyisipan dan ekstraksi hanya dapat dilakukan pada salah satu ujung yaitu bagian atas stack. Misalnya, jika kita ingin makan kue, kita akan mendapatkan yang paling atas terlebih dahulu, kemudian yang ke-2 dan seterusnya.
Posting ini akan membahas tentang implementasi stack dalam JavaScript. Saat kami bekerja dengan JavaScript, kami tidak akan khawatir tentang ukuran tumpukan karena ukuran objek JavaScript dapat tumbuh secara dinamis.
Implementasi Stack dalam JavaScript
Kami akan menggunakan kelas JavaScript untuk mengimplementasikan struktur data tumpukan. Itu tumpukan class akan berisi array di konstruktornya yang akan digunakan untuk menyimpan elemen di stack. Kelas juga akan menentukan metode berbeda yang akan digunakan untuk memanipulasi data yang disimpan di dalam tumpukan. Metode paling dasar dari array adalah memasukkan() dan ekstrak() metode yang digunakan untuk menambah dan menghapus elemen dari atas tumpukan.
Itu tumpukan class juga mendefinisikan metode lain seperti mengintip() , kosong() , jernih() , mencetak() dan ukuran() demikian juga:
tumpukan kelas {
konstruktor ( ) {
this.element = [ ] ;
}
// Menempatkan item di atas tumpukan
memasukkan ( elemen ) {
this.elements.push ( elemen ) ;
}
// Menghapus item dari atas tumpukan
ekstrak ( ) {
this.elements.pop ( ) ;
}
// Mengembalikan elemen paling atas dari tumpukan
mengintip ( ) {
kembali this.elements [ this.elements.length - 1 ] ;
}
// Cek jika tumpukan kosong
kosong ( ) {
kembali this.elements.length == 0 ;
}
// Mencetak seluruh tumpukan
mencetak ( ) {
untuk ( membiarkan saya = 0 ; saya < this.elements.length; saya++ ) {
console.log ( this.elements [ saya ] ) ;
}
}
// Mengembalikan ukuran dari tumpukan
ukuran ( ) {
kembali this.elements.length;
}
// membersihkan tumpukan
jernih ( ) {
this.element = [ ] ;
}
}
Mendorong dan Memunculkan elemen dari tumpukan
Operasi paling dasar dari tumpukan adalah memasukkan dan mengekstrak elemen dari atas tumpukan. Kelas tumpukan menyediakan dua metode untuk operasi ini:
Baris pertama dari kode yang disebutkan di atas mendeklarasikan tumpukan baru bernama s . Kemudian memasukkan() metode ini digunakan untuk menyisipkan empat elemen ke tumpukan, dua di antaranya kemudian dihapus oleh ekstrak() metode.
Cara mendapatkan elemen teratas dari tumpukan
Itu tumpukan kelas mendefinisikan mengintip() metode untuk mendapatkan elemen teratas dari tumpukan:
Bagaimana cara memeriksa apakah tumpukan kosong?
Kelas juga mendefinisikan metode yang dapat digunakan untuk memeriksa apakah tumpukan kosong:
Bagaimana cara mencetak seluruh tumpukan?
Itu mencetak() metode dapat dipanggil untuk mencetak seluruh tumpukan
Bagaimana cara memeriksa ukuran tumpukan?
Itu ukuran() metode menggunakan .panjangnya properti untuk mendapatkan ukuran tumpukan:
Bagaimana cara menghapus seluruh tumpukan?
Cukup panggil jernih() metode untuk menghapus setiap elemen tumpukan:
Kesimpulan
Tumpukan adalah struktur data yang berguna dengan banyak aplikasi dunia nyata seperti riwayat browser, tombol undo di editor teks, dan log panggilan. Semua aplikasi ini mengikuti prinsip LIFO misalnya, tombol kembali di browser membawa kembali ke halaman terakhir yang dikunjungi dan entri pertama dari log panggilan selalu merupakan panggilan terbaru.
Implementasi stack dalam JavaScript sangat mudah karena memiliki built-in dorongan dan pop metode untuk array. Artikel ini menunjukkan proses implementasi tumpukan dalam JavaScript.