Skip to content
/ Console Public

Implementation of popular algorithms and data structures using .NET Core

License

Notifications You must be signed in to change notification settings

Miltt/Console

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub release (latest by date) GitHub Workflow Status license

Console

Implementation of popular algorithms and data structures using .NET Core

Getting Started

Prerequisites:

  • Install the latest version of .NET Core
  • Install the latest version of Visual Studio Code or Visual Studio
  • Get the code:
    git clone https://github.com/Miltt/Console.git
    
  • Open the solution to build the application dotnet build and run tests dotnet test

Implemented

Algorithms

  • Cryptography
    • RSA
  • Dynamic Programming
    • Knapsack Problem
    • Fibonacci Number
    • Longest common subsequence problem
  • Greedy
    • Prims
  • Linear Programming
    • Simplex Algorithm
  • Miscellaneous
    • Lucky Tickets
    • Tower of Hanoi
    • Eight queens puzzle
    • Coin change problem
  • Multithreading
    • Dining Philosophers Problem
    • Readers Writers Problem
  • Number Theoretic
    • Prime
      • Primality Test
      • Sieve of Atkin
    • Exponentiation
      • Modular exponentiation
      • Exponentiation by squaring
      • Factorization
        • Trial division
        • Fermat's method
      • Greatest common divisor
        • Euclidean algorithm
        • Extended Euclidean algorithm
      • Multiplication
        • Recursive Naive
        • Peasant (Binary, Bitwise)
        • Karatsuba
  • Searching
    • Array
      • Binary
      • Linear
    • Graph
      • Breadth-first search
      • Depth-first search
      • Dijkstra
    • String
      • Knuth-Morris-Pratt
  • Simulated Annealing
    • Travelling salesman problem
  • Sorting (ascending and descending order)
    • Bubble
    • Cocktail
    • Gnome
    • Heap
    • Insertion
    • Merge
    • Quick
    • Selection
    • Shell

Data Structures

  • Graph
  • Heap
    • Binary
    • Binomial
  • Matrix
  • Tree
    • AVL
    • Red-black
  • Disjoint Set
  • Doubly Linked List
  • Dynamic Array
  • Hash Table
  • Immutable Stack
  • Lock-Free Stack

Design Patterns

  • Creational
    • Factory Method
  • Structural
    • Adapter
  • Behavioral
    • Strategy

License

Copyright (c) 2021 Ilya Moshanov

Licensed under the MIT License.