justcoding121 / advanced-algorithms C# 1.4K 294 100+ algorithms & data structures generically implemented in C# csharp algorithms binary-trees heap