Stacks— Purposes, Implementations & Applications

Stacks— Purposes, Implementations & Applications

Stack Data Structures

The road to becoming a great developer can get extremely bumpy at times. Stack Overflow is probably one of the most popular websites and tools in this day and age that almost every developer references at least once a day, if not more. The name comes from one of the most important and common data structures used in computer science, a stack. We will go over what a _stack overflow _actually is, but to start off…

What is a Stack?

Comparable to a linked list or an array, a stack is a linear data structure which can contain a group of elements. As an abstract data type with a bounded capacity, a stack is simply a data structure that allows for adding and removing elements in a specific order. When an element is added, it goes on top of the stack and the only element that can be removed is the element which was last added and whose position is at the very top of the stack.

Stack Push & Pop operations.

Stack Push & Pop operations taken from Programiz

An easy way to think of this is by visualizing plates stacked on top of one another. The plate at the top of the stack is the first one that would be removed, the plate which was placed at the bottommost position will remain in the stack for the longest period of time. This behaviour is referred to as LIFO or Last In, First Out.

Common Operations

Here are some of the most common operations performed on stack:

  • Push: Adds an item into the stack — if the stack is full, it will result in a Stack Overflow (not the website).
  • Pop: Removes an item from the stack — if the stack is empty, it will result in a Stack Underflow.
  • Peek or Top: Returns the top element of the stack.
  • isEmpty: Returns true if the stack is empty — if not, it will return false.

javascript programming javascript-engine

Bootstrap 5 Complete Course with Examples

Bootstrap 5 Tutorial - Bootstrap 5 Crash Course for Beginners

Nest.JS Tutorial for Beginners

Hello Vue 3: A First Look at Vue 3 and the Composition API

Building a simple Applications with Vue 3

Deno Crash Course: Explore Deno and Create a full REST API with Deno

How to Build a Real-time Chat App with Deno and WebSockets

Convert HTML to Markdown Online

HTML entity encoder decoder Online

Learning JavaScript: Development Environments for JavaScript Programming

One of the nice things about learning JavaScript these days is that there is a plethora of choices for writing and running JavaScript code. In this article, I’m going to describe a few of these environments and show you the environment I’ll be using in this series of articles.

Learning JavaScript: Data Types and Variables

To paraphrase the title of an old computer science textbook, “Algorithms + Data = Programs.” The first step in learning a programming language such as JavaScript is to learn what types of data the language can work with. The second step is to learn how to store that data in variables. In this article I’ll discuss the different types of data you can work with in a JavaScript program and how to create and use variables to store and manipulate that data.

[ Professor JavaScript ]: Introduction

Professor JavaScript is a JavaScript online learning courses YouTube Channel. Students can learn how to develop codes with JavaScript from basic to advanced levels through the online courses in this YouTube channel.

Now Learn JavaScript Programming Language With Microsoft

Microsoft has released a new series of video tutorials on YouTube for novice programmers to get a hands-on renowned programming language — JavaScript.

From imperative to declarative JavaScript

In this post, I will explain why declarative code is better than imperative code. Then I will list some techniques to convert imperative JavaScript to a declarative one in common situations.