A collection of foundational Data Structures implemented from scratch in C++, built for a better understanding of the data structure course I am taking.
- Stack: Implemented using a C++
std::vector(LIFO). Includes manual boundary checking to ensure stability duringpopoperations. - Queue: A Circular Queue implementation using a fixed-size array (FIFO). Utilizes modulo arithmetic
(Front + Qsize) % 10to manage wrap-around logic. - Singly Linked List: Built using custom
Nodestructs andnullptrfor modern memory safety (C++23 standard). Supports insertion and deletion at both ends and by specific value.
As the semester progresses, the following structures will be implemented in sync with the course syllabus:
- ArrayList: Manual implementation of a dynamic array (resizing logic).
- Hash Tables: Exploring collision resolution (Chaining vs. Open Addressing).
- Trees: Binary Search Trees (BST) and traversal algorithms (In-order, Pre-order, Post-order).
- Priority Queues: Implementation using Heaps.
- Unified TUI: A Terminal User Interface for real-time visualization of data states.
- Note: Still evaluating whether to use Python for the TUI wrapper or keep it pure C++.
- Language: C++23 (utilizing
nullptrand modern standards). - Environment: Linux / Windows GCC.