Skip to content

This repository is a collection of implementations for various algorithms and data structures, written in different programming languages. Explore efficient solutions to common computational problems and delve into the underlying concepts of computer science.

Notifications You must be signed in to change notification settings

Muhtadi1Laskar/algorithm-data-structure

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Algorithm and Data Structure Implementations

Welcome to the Algorithm and Data Structure repository! This repository is dedicated to providing clean, efficient, and well-documented implementations of various algorithms and data structures in multiple programming languages. It serves as a reference for students, developers, and enthusiasts interested in learning the intricacies of computer science fundamentals and improving their problem-solving skills.

Table of Contents


Introduction

This repository aims to help developers and learners dive deeper into the world of algorithms and data structures by offering intuitive, hands-on implementations. Each algorithm and data structure is implemented with a focus on readability, efficiency, and performance. Whether you're preparing for technical interviews, learning for academic purposes, or just expanding your programming knowledge, this repo is a valuable resource.

Languages:

  • C
  • Go
  • Haskell
  • Julia
  • JavaScript
  • Julia
  • Python
  • Ruby

What You'll Find

Data Structures

Explore a variety of common and advanced data structures that form the foundation of efficient software systems. Each data structure is implemented with detailed explanations of its time and space complexities.

  • Arrays
  • Linked Lists (Singly, Doubly, Circular)
  • Stacks
  • Queues (Standard, Circular, Priority)
  • Hash Tables
  • Binary Search Trees
  • Heaps (Min Heap, Max Heap)
  • Graphs (Adjacency List, Matrix)
  • Tries (Prefix Trees)
  • Merkle Tree

Algorithms

The algorithms in this repository cover a broad range of categories, from sorting and searching to more advanced concepts like dynamic programming and graph traversal.

  • Sorting Algorithms
    • Quick Sort, Merge Sort, Heap Sort, Bubble Sort, Insertion Sort, etc.
  • Searching Algorithms
    • Binary Search, Linear Search, etc.
  • Graph Algorithms
    • Depth-First Search (DFS), Breadth-First Search (BFS), Dijkstra’s Algorithm, Kruskal’s Algorithm, etc.
  • Dynamic Programming
    • Fibonacci, Longest Common Subsequence, Knapsack Problem, etc.
  • Greedy Algorithms
    • Activity Selection, Huffman Coding, etc.
  • Backtracking
    • N-Queens, Sudoku Solver, etc.
  • Divide and Conquer
    • Matrix Multiplication, Closest Pair of Points, etc.
  • Mathematical Algorithms
    • Prime Number Generation (Sieve of Eratosthenes), Greatest Common Divisor (GCD), etc.

About

This repository is a collection of implementations for various algorithms and data structures, written in different programming languages. Explore efficient solutions to common computational problems and delve into the underlying concepts of computer science.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published