Skip to content

MohammadFahad1/Basic_Data_Structures

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

119 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Basic Data Structures in C++ 🛠️

Welcome to my personal archive dedicated to mastering foundational computer science Data Structures and Algorithms using clean, optimized C++. This repository contains raw data structure implementations, custom utility notes, platform challenge solutions (LeetCode), and tracking for academic evaluation frameworks.


📂 Repository Breakdown

The codebase is structured logically into specific data structural domains, linear scaling problems, and performance tracking scripts:

1. Linear Data Structures (Lists, Stacks & Queues)

  • Implementations & Practical Routing:
    • Error_handling_in_linked_list.cpp — Dynamic node pointer safety check implementations.
    • Browser_History.cpp — Doubly/Singly linked list simulation mimicking web navigation mechanics.
  • Stack & Queue Mechanics (LeetCode & Core Logic):
    • 20. Valid Parentheses.cpp — LIFO stack array balancing validation logic.
    • 225. Implement Stack using Queues.cpp — Simulating LIFO structural states using standard FIFO containers.
    • 232. Implement Queue using Stacks.cpp — Simulating FIFO structural states using dual LIFO containers.
    • 844. Backspace String Compare.cpp — Memory-efficient stack string processing operations.
    • Insert An Element At Its Bottom In A Given Stack.cpp — Bottom insertion via memory-stack item tracking.
    • Maximum Equal Stack Sum.cpp — Multi-stack optimization and sizing strategies.

2. Hierarchical & Non-Linear Structures (Trees & Heaps)

  • Tree Architecture Inputs & Essential Metrics:
    • binary_tree_input.cpp — Serializing non-linear graphs from simple flat sequences.
    • count_nodes_binary_tree.cpp | count_leaf_nodes_in_a_binary_tree.cpp | count_max_height_of_a_binary_tree.cpp — Node analytics via post-order aggregations.
  • Traversals:
    • binary_tree_preorder_traversal.cpp | binary_tree_inorder.cpp | binary_tree_postorder_traversal.cpp — Depth-First Search (DFS) order configurations.
    • binary_tree_level_order_traversal.cpp — Breadth-First Search (BFS) tracking using queues.
    • Level_Nodes.cpp | Leaf_Nodes.cpp | Print_Outer_Tree.cpp | Sum_Without_Leaf.cpp — Targeted subset node extraction patterns.
  • Binary Search Trees (BST) & Layout Formulas:
    • binary_search_tree_implementation.cpp — Standard $\mathcal{O}(\log N)$ insertion, validation, and layout routing.
    • convert_array_to_bst.cpp — Generating height-balanced binary search layouts from sorted flat tables.
    • Formula to reach the children and parent nodes in complete bst.txt — Matrix-mapped flat index math guide for zero-pointer tree trees.
    • Heap.txt — Structural definitions regarding max/min heap properties.

3. Structural Evaluations & Complexity Verification

  • Queries.cpp | Queries_Again.cpp | Remember_Previous_Queries.cpp | Special_Queries.cpp — Sequential list and vector stream operations.
  • Z_Binary_Search.cpp — Optimal $\mathcal{O}(\log N)$ array data tracking vs. Z_Binary_Search_Problem_Solving_Using_Bruteforce.cpp linear search tests.
  • Y_Range_sum_query.cpp — Static continuous index summation maps utilizing Prefix Sum grids.
  • Time_and_Space_complexity.cpp — Big-O time and space scaling breakdowns across linear and non-linear patterns.

4. Problem Solving & Assignments

  • Final Exam Problems/ — Comprehensive module challenges verifying tracking layouts.
  • Duplicate.cpp | Detect_Duplicates.cpp | Remove_Duplicate.cpp | Remove_Duplicate_Again.cpp — Vector and list lookup operations.
  • Is_It_Valid.cpp | Same_or_Not.cpp | Same_or_Not_II.cpp | Same_to_Same.cpp — Sequence validation testing.
  • C_Replacement.cpp | D_Counting_Elements.cpp | F_Reversing.cpp | J_Count_Letters.cpp | L_New_Array.cpp — General vector processing scripts.

🛠️ Compilation & Execution

A compiler with local environment configurations support for C++11 or modern standards is required (such as g++).

Quick Start Deployment

  1. Clone your workspace environment:
    git clone github.com
  2. Access directory root:
    cd Basic_Data_Structures
  3. Compile an execution binary (e.g., Valid Parentheses file):
    g++ "20. Valid Parentheses.cpp" -o output_program
  4. Run executable footprint:
    • Windows: output_program.exe
    • Linux/macOS: ./output_program

📈 Learning Roadmap & Milestones

  • Linear Core (Arrays, Linked Lists, Stacks, Queues)
  • Tree Frameworks (Binary Trees, Binary Search Trees)
  • Index Matrix Operations (Prefix Sums, Binary Searches)
  • Priority Queue Platforms & Complete Binary Heaps
  • Advanced Network Graphs (BFS Routing, Shortest Paths)

About

Implementations of fundamental data structures in C++, featuring Linked Lists, Stacks, Queues, Binary Trees, and BSTs, alongside solutions to related algorithmic challenges.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages