Coder Social home page Coder Social logo

ravish108coder / algorithmic-resources Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hkirat/algorithmic-resources

0.0 0.0 0.0 61 KB

A Curated list of Topic wise Theory and Questions to Get You Started On Competitive Coding.

License: Creative Commons Zero v1.0 Universal

algorithmic-resources's Introduction

Algorithmic Resources

A Curated list of Topic wise Theory and Questions to Get You Started On Competitive Coding.

Topics

Arrays


Binary Search and Ternary Search


Binary Search : The process of exploiting the property of an array of being sorted to arrive at answers of questions in non linear time.

Ternary Search : The process of exploiting the property of a function having double diffrential of a constant sign to arrive to results in non linear time.

Dynamic Programming


Used to solve questions which can be broken down into smaller sub problems.It involves the technique of saving the result of a problem for future reference.

Flow


Game Theory


Used to solve problems involving mathematical modelling of conflict and cooperation among rational players.

  • Theory

    • Stanford - PDF on Combinatorial Games.
    • Wikipedia - Introduction to Nim Games.
    • Book - Composite Mathematical Games.
    • Book - Game Theory By Thomas S. Ferguson.
    • Wikipedia - Sprague Grundy Theorem.
    • Topcoder - Introduction to Algorithmic Games.
  • Questions on

Graphs


A graph consists of nodes and the interconnection between them.The problems involve finding shortest distance, connectivity and flow.

Greedy


Greedy problems involve solving a problem statement considering the most greedy, i.e. most optimal solution at the given time without taking into consideration the future effects of it.

Maths


Problem related to mathematics are quite common in the domain of competitive programming.It involved topics like geometry, algebra, discrete mathematics and probability.

  • Theory

    • Stanford - Stanford's Guide on Introduction To Competitive Programming.
    • Aduni - Course Guide to Discrete Mathematics.
    • Topcoder - Understanding Probability.
  • Questions on

Matrix Exponentiation


Used to solve problems which involve finding a solution to a given series by using exponentiation property on multiplication of matrices.The complexity is thus reduced to logrithmic from linear.

  • Theory

    • zobayer - Introduction to Matrix exponentiations
    • Quora - Solving Dynamic Programming with Matrix Exponentiation.
    • Codechef - Solving Recurrences using Cayley Hamilton Theorem and Matrix Exponentiation
  • Questions on

Miscellaneous


Prefix and Suffix Trees


Tries are some kind of rooted trees in which each edge has a character on it.

Binary Indexed Trees


A Fenwick tree or binary indexed tree is a data structure that can efficiently update elements and calculate prefix sums in a table of numbers.

Segment Trees


Segment tree is a tree for which each node represents an interval.

Trees


A tree is a data structure made up of nodes or vertices and edges without having any cycle.

algorithmic-resources's People

Contributors

hkirat avatar ir1d avatar nikhil96sher avatar rusrushal13 avatar sharan-lobana avatar sks147 avatar sukeesh 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.