algorithms-dotnet

A collection of algorithms implemented in C# for .NET developers.

Overview

This repository contains various algorithms implemented in C#. These algorithms cover a wide range of topics including searching, sorting, linked lists, strings, and binary trees. Each algorithm is implemented as a separate method or class, providing a clear and concise solution to a specific problem.

Algorithms Included

  • Binary Search
  • Finding the Largest and Smallest Number in an Unsorted Integer Array
  • Finding Pairs with a Given Sum in an Integer Array
  • Finding the Middle Element of a Singly Linked List
  • Reversing a Linked List
  • Detecting Cycle in a Linked List and Finding the Starting Node of the Cycle
  • Checking if Two Strings are Anagrams of Each Other
  • Checking if a String is a Palindrome
  • Removing Duplicates from an Array in Place
  • Preorder Traversal in a Binary Tree
  • Inorder Traversal in a Binary Tree
  • Implementing a Binary Search Tree
  • Reversing Words in a Sentence
  • Printing Duplicate Characters from a String
  • Implementing the Insertion Sort Algorithm
  • Counting the Occurrence of a Given Character in a String
  • Finding the Occurrence of a Given Character in a String
  • Removing Duplicates from an Array without Using Any Library
  • Finding the Missing Number in a Given Integer Array of 1 to 100

Usage

To use these algorithms, simply call the corresponding methods or instantiate the necessary classes within your C# code. You can copy and paste the implementations directly into your project or reference this repository as a submodule.

Contributing

Contributions are welcome! If you have an algorithm or data structure implementation that you'd like to add, feel free to open a pull request.