Skip to content

sneakpodbob/sortalgodemo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧪 Sort Algorithm Demo

.NET 10 C# xUnit License Built with GitHub Copilot

A small .NET 10 console app that benchmarks classic sorting algorithms using BenchmarkDotNet — built entirely as a playground for experimenting with GitHub Copilot.

✨ Purpose

This repo exists to explore what GitHub Copilot can do: generating algorithms, writing tests, refactoring code, and more. The sorting theme is just a convenient vehicle.

📂 Project Structure

Path Description
SortAlgoDemo/ Console app – generates a random array, runs every algorithm, and prints a comparison table.
SortAlgoDemo.Tests/ xUnit test project for verifying sort correctness.

🔢 Algorithms Included

Algorithm Class
Bubble Sort BubbleSort
Selection Sort SelectionSort
Insertion Sort InsertionSort
Shell Sort ShellSort
Merge Sort MergeSort
Heap Sort HeapSort
Quick Sort QuickSort
Linq Sort LinqSort

All algorithms implement the shared ISortAlgorithm interface.

🚀 Getting Started

# clone the repo
git clone https://github.com/sneakpodbob/sortalgodemo.git
cd sortalgodemo

# run the benchmark (BenchmarkDotNet must run in `Release` configuration for reliable measurements)
dotnet run --project SortAlgoDemo -c Release

# run the tests
dotnet test

BenchmarkDotNet uses the SortBenchmarks runner to exercise each algorithm on the same seeded random dataset. The generated artifacts (HTML, Markdown, etc.) land in SortAlgoDemo/BenchmarkResults, so open the latest report after the benchmark finishes.

🛠️ Tech Stack

  • .NET 10 (console app)
  • xUnit (unit tests)
  • GitHub Copilot 🤖 (the real star of the show)

📄 License

This project is for learning and experimentation — use it however you like (MIT License).

About

Demo of sort algorithms - just to test some GitHubCopilot Stuff

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors