An open source initiative for implementing and testing algorithms in various programming languages.

Algorithms

An open source initiative for implementing and testing algorithms in various programming languages.

Contributing

The idea here is to learn algorithms by implementing, testing and analyzing them in a bunch of programming languages. I've attempted to do this for a few algorithms in C programming language (cough) with the help of a bunch of contributors while pursuing my UG degree.

As part of the 24 pull requests initiative, all contributions are welcome. Some examples may include:

  • Implementing an algorithm in a programming language of your choice.
  • Adding documentation (introduction, details, etc.) to an algorithm.
  • Adding tests and sample input generators to an algorithm.
  • Adding performance analysis charts to an algorithm.
  • Fixing bugs in existing implementations.
  • Refactoring ancient ugly-looking code.

Who might contribute to this

  • Students learning algorithms
  • Professionals looking to brush up their skills
  • Researchers
  • Robots

What will I get out of contributing?

  • Open source contributor badge
  • A nice looking GitHub profile
  • Knowledge and practice
  • Top student contributor between Dec 01 and Dec 24 will receive 24 MATIC tokens.

Table of contents

  • Basic

    • binary-search-tree
    • graph-representations
  • Brute Force

    • bubble-sort
    • knapsack
    • matrix-multiplication
    • partition
    • string-matching
    • subset-sum
  • GCD

    • conseq-integer
    • euclid
    • middle-school
  • Divide and Conquer

    • merge-sort
    • node-count
    • quick-sort
  • Decrease and Conquer

    • topological-sort
    • tree-diameter
  • Combinatorial and Graph

    • assignment
    • breadth-first-search
    • depth-first-search
  • Greedy Approach

    • dijkstra
    • floyd
    • huffman
    • knapsack
    • kruskal
    • warshall
  • Backtracking and Bounds

    • hamilton
    • knapsack
    • n-queens
    • subset-sum
  • Space Time Tradeoffs

    • closed-hash-table
    • horspool
    • open-hash-table
  • Transform and Conquer

    • avl-tree
    • heap-creation
    • heap-delete
    • heap-sort
    • two-three-tree
  • Other

    • nth-fibonacci
    • tower-of-hanoi
Owner
Manipal's open source academic portal.
Manipal's open source academic portal.
Similar Resources

Languages for the Tree-sitter parser generator wrapped in Swift packages

TreeSitterLanguages Languages for the Tree-sitter parser generator wrapped in Swift packages. Motivation There are two reasons this package exists: As

Dec 21, 2022

Redacted source code for exercises proposed in the Data Structures and Algorithms laboratory.

fsega_ie2_dsa Redacted source code for exercises proposed in the Data Structures and Algorithms laboratory. Usage The src/ directory contains a direct

Dec 5, 2021

A drop-in replacement for std::list with 293% faster insertion, 57% faster erasure, 17% faster iteration and 77% faster sorting on average. 20-24% speed increase in use-case testing.

plf::list A drop-in replacement for std::list with (on average): 293% faster insertion 57% faster erasure 17% faster iteration 77% faster sorting 70%

Nov 8, 2022

Athena, a C testing framework

Part of the Olympus project. Athena, the Greek goddess of wisdom. Athena provides a testing framework. Usage Create a file in bin/. #include the sourc

Feb 26, 2022

Repository of problems and solutions of labsheets used for Data Structures and Algorithms (CS F211) in Semester 2, 2020-21 at BITS Pilani - Hyderabad Campus.

CS F211 Data Structures and Algorithms (BITS Pilani - Hyderabad Campus) This repository contains the problems, solution approaches & explanations and

Oct 31, 2022

Algo-Tree is a collection of Algorithms and data structures which are fundamentals to efficient code and good software design

Algo-Tree is a collection of Algorithms and data structures which are fundamentals to efficient code and good software design

Algo-Tree is a collection of Algorithms and data structures which are fundamentals to efficient code and good software design. Creating and designing excellent algorithms is required for being an exemplary programmer. It contains solutions in various languages such as C++, Python and Java.

Oct 4, 2022

A 3GPP R16 compliant open source 5G core UPF (User Plane Function).

A 3GPP R16 compliant open source 5G core UPF (User Plane Function).

OpenUPF A 3GPP R16 compliant open source UPF. The OpenUPF is an open source project for 5th generation (5G) mobile core networks User Plane Function.

Dec 16, 2022

An open source library for C

Eric O Meehan C Library Introduction Eric O Meehan's C Library is an open source collection of tools for the C programming language. The project is in

Dec 11, 2022

Open-source graph editor, with built-it step-by-step Dijkstra's Algorithm.

Open-source graph editor, with built-it step-by-step Dijkstra's Algorithm.

Visual Dijkstra - Simple visual graph editor, with built-in step-by-step Dijkstra's algorithm Visual Dijkstra is a free and open-source tool, designed

Oct 10, 2022
This is a beginner-friendly project aiming to build a problem-set on different data structures and algorithms in different programming languages.

DSAready Overview This is a beginner-friendly project that aims to create a problem-set for various Data Structures and Algorithms. Being a programmer

Aug 17, 2022
Data Structure and Algorithms problems across various platforms.
Data Structure and Algorithms problems across various platforms.

Covering various practice problems of Arrays, Stacks, queue, tree, graph and different Algorithms. A collection of solutions for Data Structure and Algorithms problems across various platforms in different languages.

Oct 29, 2022
Implementation of various data structures and algorithms.
Implementation of various data structures and algorithms.

Data Structures and Algorithms A place where you can find and learn the copious number of algorithms in an efficient manner. This repository covers va

Jul 24, 2022
A collection of various algorithms to produce length-limited prefix codes

Introduction This is a collection of various algorithms to produce length-limited prefix codes. My library is written in plain C with tons of comments

Nov 7, 2022
Collection of all the LeetCode problem solutions using different programming languages.

LeetCode Solutions Collection of all the LeetCode problem solutions using different programming languages. To contribute, you can make a file for the

Sep 2, 2022
This repository aims to contain solutions and explanations to various competitive programming problems, which may be important for interviews and online tests of different companies.
This repository aims to contain solutions and explanations to various competitive programming problems, which may be important for interviews and online tests of different companies.

Competitive Programming Solutions Compilation Hello everyone ?? This repository contains solutions and explanations to various competitive programming

Dec 14, 2022
Cross-platform STL-styled and STL-compatible library with implementing containers, ranges, iterators, type traits and other tools; actors system; type-safe config interface.

Yato A small repository where I'm gatherting useful snippets and abstractions for C++ development. Yato includes 3 main modules: multidimensional cont

Dec 18, 2022
Implementing B tree using C++
Implementing B tree using C++

B Tree Implementing B tree using C++ Search Insert Structuring the main Function Delete Demo : Usage : Clone it to some place in your PC. Install Visu

Nov 27, 2021
Implementing dynamic lists in C

Dynamic-Lists Implementing dynamic lists in C <begginer level> DESCRIPTION: This header file <list.h> implements python-like lists and it's functions.

Feb 2, 2022
Templates, algorithms and data structures implemented and collected for programming contests.
Templates, algorithms and data structures implemented and collected for programming contests.

Templates, algorithms and data structures implemented and collected for programming contests.

Jan 2, 2023