I am a young programmer trying to learn C++. I have finished the three books that I own, but none of them cover queues or stacks. I have searched everywhere on the Web, and still my efforts are fruitless. Can you spare some time to explain just how queues (more important of the two) and stacks are written, implemented, and how they operate?

I would first recommend looking for a better bookstore: I know there are plenty of books out there on this subject. Writing the code is a little beyond the scope of answering these questions, but I’ll try and get you started.

To create a queue, you simply need an array to hold whatever data type you’ll be storing. You’ll then need a head and a tail index to track where you are. Initially, both head and tail point to the bottom of the array.

When you add an item, you put it at the location indicated by the head index and increment the head index. When the head index gets to the top of the array, you must wrap around to the bottom of the array again. When you come up against the tail index, the queue is full and no more items can be added.

To get an item from the queue, you return the item indicated by tail index and increment the tail index, wrapping as needed when you get to the top of the array. When both the tail and the head index are the same, the queue is empty.

A stack would also use an array, but only track the top of the array as items are added.

Both structures are ideally suited to being implemented as a class.

Share the Post:
Share on facebook
Share on twitter
Share on linkedin


The Latest

your company's audio

4 Areas of Your Company Where Your Audio Really Matters

Your company probably relies on audio more than you realize. Whether you’re creating a spoken text message to a colleague or giving a speech, you want your audio to shine. Otherwise, you could cause avoidable friction points and potentially hurt your brand reputation. For example, let’s say you create a

chrome os developer mode

How to Turn on Chrome OS Developer Mode

Google’s Chrome OS is a popular operating system that is widely used on Chromebooks and other devices. While it is designed to be simple and user-friendly, there are times when users may want to access additional features and functionality. One way to do this is by turning on Chrome OS

homes in the real estate industry

Exploring the Latest Tech Trends Impacting the Real Estate Industry

The real estate industry is changing thanks to the newest technological advancements. These new developments — from blockchain and AI to virtual reality and 3D printing — are poised to change how we buy and sell homes. Real estate brokers, buyers, sellers, wholesale real estate professionals, fix and flippers, and beyond may