cricksmaidiene / algorithms_repository

:books: A list of program implementations of common data structures and algorithms in Java, Python, C or C++

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Algorithms Repository

Contents

Programming Languages

  • Each algorithm is implemented with the following languages.
  • The program was compiled/ built using the same version.
  • All code in each language is made with a profiler for time and memory.
Langauge Version
Python Python 3.8.2
Java openjdk 12.0.1
C++ gcc 9.3.0_1

Data Structures

ADT Description
Linked List
Stack
Queue
Dictionary
N-Ary Tree
Heap
Graphs

Basic Algorithms

Sorting

Algorithm Name Description
Insertion Sort
Selection Sort
Bubble Sort
Merge Sort
Quick Sort
Radix Sort
Topological Sort

Search

Algorithm Name Description
Linear Search
Binary Search
A* Search
Dijkstra

Cryptographic Algorithms

Algorithm Name Description
Caesar Cipher
Affine Cipher
DES
AES
RSA
SHA

System and Network Algorithms

Algorithm Name Description
Scheduling
Banker's Algorithm
Routing Algorithm

About

What I'm looking to do here has probably been done a whole bunch of times before but I felt like it was my turn to have an open code archive for data structures and common algorithms. Of course I could have found this anywhere else on the internet but I felt like making my own would really make the concepts stick. So here it is!

I'm hoping to coalesce the many computational ideas I have picked up over the years. Perhaps I will be able to join some new dots and bring the big picture theoretical ideas into the physical realms of code. I'd still love for it to be fun and take an interactive and enjoyable learning experience seriously, so I'll do my best with that as well. Cheers.

About

:books: A list of program implementations of common data structures and algorithms in Java, Python, C or C++


Languages

Language:Java 91.6%Language:Python 8.4%