Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

abkarada/Data_Structures-Algorithm

Repository files navigation

πŸ“š Data Structures & Algorithms in C/C++

A comprehensive collection of data structures, search/sort algorithms, and advanced memory-safe programming techniques implemented in C++, C, and Python.

This repository is ideal for students, interview preparation, competitive programming, or anyone looking to strengthen their understanding of low-level algorithmic thinking.


πŸ“ Folder Structure

Folder Description
Arrays Basic array operations and traversal techniques.
Linked Lists Implementation of singly linked list operations.
Double Linked Lists Implementation of doubly linked list structures and manipulations.
Trees Binary tree basics, traversals, and recursive logic.
Binary Search Efficient searching in sorted collections.
Lineer Search Simple linear (sequential) search examples.
Bubble Sort Classic sorting algorithm with visual trace examples.
Selection Sort In-place comparison sort with iterative logic.
Insertion Sort Efficient for nearly sorted datasets; detailed logic included.
Merge_Sort Divide and conquer sorting (recursive).
Shell Sort Advanced version of insertion sort using gap sequences.
Extra_Smart_Solutions Advanced memory and safety techniques in C/C++.

🧠 Extra_Smart_Solutions - Advanced Memory Safety (C++)

This folder is dedicated to enhancing C/C++ memory safety, especially in performance-critical or low-level systems programming scenarios.

File Name Purpose
Memory_Pooling.cpp Efficient dynamic memory reuse to reduce fragmentation and allocations.
Smart_Pointers.cpp Demonstration of unique/shared pointer behavior and usage.
Poisoned_Pointer.cpp Simulates poisoned pointers to catch use-after-free bugs.

βœ… These implementations focus on preventing memory leaks, dangling pointers, and use-after-free vulnerabilities in C/C++ environments.


πŸ›  Technologies Used

  • C++ (Core logic and modern memory management)
  • C (Low-level data structure manipulation)
  • Python (Selected algorithm demos)
  • Standard Template Library (STL) in some C++ files

πŸš€ Getting Started

1. Clone the Repository

git clone https://github.com/abkarada/Data_Structures-Algorithm.git
cd Data_Structures-Algorithm
g++ Linked\ Lists/linked_list.cpp -o linkedlist
./linkedlist

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /