Skip to content

Anjaneyakumar18/Data-Structures-and-algorithms

Repository files navigation

Data-Structures-and-algorithms

DSA Banner

🚀 Level up your coding skills and ace technical interviews with this power-packed Data Structures and Algorithms repository!
📚 Covering everything from Arrays to Graphs, from Recursion to Dynamic Programming.
👨‍💻 Built for learners, coders, and aspirants who want to master DSA with clean code and organized folders.


📁 Repository Structure

Each folder in this repository represents a core concept or technique in DSA. Here's a breakdown:


🔗 LinkedList

linkedlist

  • 📝 Description: Implementations of various linked list types, including singly, doubly, and circular linked lists.
  • Key Concepts: 🧩 Node creation, ➕ insertion, ➖ deletion, 🔁 traversal, 🔄 reversal

🔁 Recursion

recursion

  • 📝 Description: Examples demonstrating the use of recursion to solve problems.
  • Key Concepts: 🎯 Base cases, 🔄 recursive calls, ⚠️ stack overflow prevention

🧱 Stack

Stack

  • 📝 Description: Stack data structure implementations and applications.
  • Key Concepts: 📚 LIFO principle, ⬆️ push, ⬇️ pop, 🧮 expression evaluation

🗃️ hash_table

Hash Table

  • 📝 Description: Hash table implementations for efficient data retrieval.
  • Key Concepts: 🔢 Hash functions, ⚔️ collision resolution, 🔑 key-value storage

🧮 matrix

Matrix

  • 📝 Description: Operations and algorithms related to matrices.
  • Key Concepts: ↔️ Matrix traversal, 🔄 rotation, ✖️ multiplication

🔀 two_pointers

Two pointers

  • 📝 Description: Problems solved using the two-pointer technique.
  • Key Concepts: ➡️➡️ Forward scanning, 🔍 searching, 🔁 optimization

🌲 Trees

Trees

  • 📝 Description: Tree data structure implementations and traversals.
  • Key Concepts: 🌳 Binary trees, 🔍 BST, 🔄 In-order/Pre-order/Post-order traversal

🧮 Arrays and Strings

Arrays and Strings

  • 📝 Description: Algorithms focusing on array and string manipulation.
  • Key Concepts: 🔤 Pattern matching, 🗂️ sorting, 🔍 searching

🔄 Backtracking

Back tracking

  • 📝 Description: Solutions employing backtracking techniques.
  • Key Concepts: 🧠 Recursive search, ❌ pruning paths, 🎯 constraint solving

✂️ Divide and Conquer (D & C)

D and C

  • 📝 Description: Algorithms that divide problems into subproblems, solve them independently, and combine results.
  • Key Concepts: 🔍 Binary search, ⚔️ merge sort, ⚡ quick sort

📈 Dynamic Programming

Dynamic programming

  • 📝 Description: Problems solved using dynamic programming to optimize recursive solutions.
  • Key Concepts: 💾 Memoization, 📊 tabulation, 🔁 overlapping subproblems

🕸️ Graph

Graph

  • 📝 Description: Graph data structure implementations and traversal algorithms.
  • Key Concepts: 🔄 BFS, 🔁 DFS, 🛣️ shortest path algorithms

💰 Greedy

Greedy

  • 📝 Description: Algorithms that make locally optimal choices aiming for a global optimum.
  • Key Concepts: ⏳ Activity selection, 🪙 coin change, 🔤 Huffman coding

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published