/C-Sharp-Algorithms

Implementations of Data Structures and Algorithms in C#

Primary LanguageC#MIT LicenseMIT

C# ALGORITHMS Build Status

Implementations of Data Structures and Algorithms in C#.

DESCRIPTION

It originally started out as an interview preparation project. However, after receiving a great amount of positive responses on reddit, and noticing excitement from a few GitHubers to contribute furthermore to it, the project took on a different meaning. So I decided to keep maintaining it as a reference for data structures and algorithm implementations in C# as well as my research side-project under these topics.

Solution Hierarchy:

This is a C#.NET solution-project, and it contains three subprojects:

  1. Algorithms: A class library project. Contains the Algorithms implementations.
  2. Data Structures: A class library project. Contains the Data Structures implementations.
  3. Main Program: Contains tests for the data structures and algorithms projects.

Requirements:

  1. C# 5
  2. .NET 4.5
  3. NUnit

A Note to Contributors:

If you wish to contribute to C# ALGORITHMS, then please make sure you check out the Contribution Guidelines first.

Note: The projects where tested on Xamarin Studio (MonoDevelop) on OSX 10, and Visual Studio on Windows 7.

DATA STRUCTURES

Lists:

Heaps:

Priority Queues:

Hashing Functions:

Hash Tables:

Trees:

Graphs:

  • Undirected Graphs:
  • Undirected Weighted Graphs:
  • Directed Graphs:
  • Directed Weighted Graphs:

ALGORITHMS

Sorting:

Graphs:

  • Graph Search:
  • Shortest Paths:
  • DFS Applications:
  • BFS Applications:

Strings:

Numeric:

Visualization:

CONTRIBUTORS

LICENSE

This project is licensed under the MIT License.