Skip to content

Latest commit

 

History

17 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C++ Data Structures

Custom implementations of common data structures in C++ to deepen understanding of STL internals, templates, and object-oriented design.

The project includes multiple implementations of Linked Lists, Dynamic Arrays, Queues, and Stacks using different design approaches.

Implemented Data Structures

Doubly Linked List

  • Insert at beginning/end
  • Insert after node
  • Delete nodes
  • Reverse list
  • Search
  • Update values
  • Clear list
  • Random access by index

Dynamic Array

  • Resize
  • Insert/Delete at any position
  • Reverse
  • Search
  • Dynamic memory management

Queue

Implemented using:

  • Doubly Linked List
  • Dynamic Array

Stack

Implemented using:

  • Doubly Linked List
  • Dynamic Array

Concepts Practiced

  • Templates
  • Object-Oriented Programming (OOP)
  • Composition
  • Inheritance
  • Dynamic Memory Management
  • Exception Handling
  • STL Design Principles

Design Notes

Some structures intentionally use inheritance even when composition may be a better design choice.

The goal was not only to build the data structures, but also to experiment with different design approaches and better understand their trade-offs.

About

Custom implementations of common data structures in C++ using Templates and Object-Oriented Programming concepts.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages