Data Structures in C++ - Volume 1

A comprehensive 38-page technical guide on implementing fundamental data structures and advanced C++ techniques from scratch using templates.

Core Data Structures & Concepts

custom::array

Array

Learn how to implement static and dynamic arrays from scratch.

Detailed implementation of arrays covers memory layout, bounds checking, and template-based flexibility for fixed and dynamic sizes.

custom::vector

Vector

Resizable array implementation with template support.

Focus on growth strategies, dynamic resizing, iterator support, and exception safety in vector implementations.

custom::set

Set

Implement ordered collections without duplicates.

Implementation details of balanced tree or hash-based sets, emphasizing unique element storage and fast lookup.

custom::stack

Stack

Last In First Out data structure with push/pop.

Simple, efficient LIFO container implementation, covering template usage and exception guarantees.

custom::queue

Queue

First In First Out structure for sequential processing.

Design of FIFO queue with efficient enqueue/dequeue, memory handling, and template-based flexibility.

custom::deque

Deque

Double-ended queue supporting push/pop from both ends.

Deque implementation covering dynamic memory, bidirectional iterators, and STL interface compatibility.

new Array()

Dynamic Memory

Managing memory with allocators and pointers.

In-depth discussion on memory allocation, deallocation, and usage of custom allocators in template classes.

operator[]()

Operator Overloading

Custom behavior for operators in your classes.

Guide to implementing operator overloads for intuitive syntax and safe resource management.

begin() end()

Iterators

Building custom iterators and traits for STL compatibility.

Techniques for defining iterator categories, traits, and custom iterator classes that integrate with STL algorithms.

Buy the PDF on Gumroad