GithubHelp home page GithubHelp logo

csharp-dev / codechallenge Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 10.79 MB

Code Challenge Solutions from different sources in C# by Anit Shrestha Manandhar.

Home Page: https://codeanit.com

C# 100.00%
csharp dotnet dotnetcore algorithm datastructure design-patterns design-principles

codechallenge's Introduction

----------------------------------------------


OBJECTIVE - Become A Competitive C# Programmer


----------------------------------------------


“ For me, great algorithms are the poetry of
  computation. Just like verse, they can be terse,
  allusive, dense, and even mysterious.

  But once unlocked, they cast a brilliant new
  light on some aspect of computing. ”

— Francis Sullivan


----------------------------------------------


“ An algorithm must be seen to be believed. ”

— Donald Knuth


----------------------------------------------


“ I will, in fact, claim that the difference
between a bad programmer and a good one is
whether he considers his code or his data
structures more important.

Bad programmers worry about the code.

Good programmers worry about data structures
and their relationships. ”

— Linus Torvalds


----------------------------------------------


“ Algorithms + Data Structures = Programs. ”

— Niklaus Wirth


----------------------------------------------


Hi! I am Anit. I am an ever learning student
of mathematics and computer science.

I have worked for few years as a software
development engineer and I believe that I
have to keep myself skilled and updated. 

So from time to time I go through the basics,
i.e. data structures and algorithms to enhance
my problem solving skills and keep myself 
competitive.

Furthermore, to keep myself updated in this
technology I need to follow the advancements
by trying out the changes on hand.

Hence, the objective of this repository is
personal growth and development of 
programming skills.

The repository contains the code challenges
and their solutions from different sources.
It also includes implementation of basic data
structures and algorithms in C#.

Books and other resources are in the 
Resource folder.

Code challenges solutions from different 
sources are in the CodeChallenge folder.


----------------------------------------------


References from Princeton University to
re-enforce the basic and advance programming
skills:

https://introcs.cs.princeton.edu/java/home/
https://www.coursera.org/learn/cs-programming-java

https://algs4.cs.princeton.edu/
https://www.coursera.org/learn/algorithms-part1/
https://www.coursera.org/learn/algorithms-part2/

https://aofa.cs.princeton.edu/home/
https://www.coursera.org/learn/analysis-of-algorithms/

https://ac.cs.princeton.edu/home/
https://www.coursera.org/learn/analytic-combinatorics


I am forever greatful to Princeton University
and it's outstanding faculty for making these
online resources free, and especially Robert
Sedgewick & Kevin Waynefor excellent contents.


----------------------------------------------


Recently came to know about a playlist on 
Algorithms by Abdul Bari on YouTube. I am 
very thankful to his effort on making very
hard things easy to understand.

youtube.com/watch?v=e2cF8a5aAhE&list=PLDN4rrl48XKpZkf03iYFl-O29szjTrs_O


----------------------------------------------


Resources for Software Engineers

Design Principles like KISS, DRY, YAGNI, SOLID
Clean Code by Robert C. Martin
Refactoring by Martin Fowler
Test Driven Development by Kent Beck
Design Patterns by The Gang of Four

Introduction to Algorithms by CLRS
Algorithm Design by Kleinberg & Tardos
The Stony Brook Algorithm Repository


----------------------------------------------


C# Resources

Microsoft official site : https://docs.microsoft.com/en-us/dotnet/csharp
Introduction to C# : https://courses.edx.org/courses/course-v1:Microsoft+DEV204.1x+1T2019a
Algorithms and Data Structures in C# : https://courses.edx.org/courses/course-v1:Microsoft+DEV204.3x+4T2017
Object Oriented Programming in C# : https://courses.edx.org/courses/course-v1:Microsoft+DEV204.2x+1T2019a
Code repository for "Algorithms" textbook by Robert Sedgewick and Kevin Wayne : https://github.com/nguyenqthai/Algs4Net
Book: 22 Design Pattern in C# by Matthew P Jones, https://www.exceptionnotfound.net/introducing-the-daily-design-pattern

My personal collection of resources on C# : https://trello.com/c/FLyAcICx/33-📝📚must-know-for-c-dev


----------------------------------------------


Contents of the repository to cover this list 

- Mathematics : Prime Number, Big Integer, Permutation,
    Number Theory, Factorial, Fibonacci, Sequences,
    Modulus

- Dynamic Programming : Longest Common Subsequence,
    Longest Increasing Subsequence, Edit Distance,
    0/1 Knapsack, Coin Change, Matrix Chain Multiplication,
    Max Interval Sum

- Graph Traversal : Flood Fill,Floyd Warshal, MST,
    Max Bipartite Matching, Network Flow,
    Articulation Point

- Sorting : Bubble Sort, Quick Sort, Merge Sort,
    Selection Sort, Radix Sort, Bucket Sort

- Searching : Complete Search, Brute Force, Binary Search

- String Processing : String Matching, Pattern Matching

- AdHoc Problems: Trivial Problems


----------------------------------------------


If in anyway I can be of any help with my skills of
programming, I will undoubtably be willing to help.
Please do not hesitate to reach out to me!

[email protected]


----------------------------------------------


TODO:
1. Implement Code Review tool.
2. Impleemnt Clean Code guide lines.
2. Implement CI to run the unit tests.

codechallenge's People

Contributors

anitsh avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.