Everyone wants to become a good coder but only a few manage to achieve this you know why?
Fundamentals
Prime numbers
Number-theoretic functions
Number systems
Modular arithmetic
Without mathematics, you may understand the code for a moment, and then you may cram it but you'll be only able to optimize it and recreate it when you know the flow of code and what exactly is happening in the code. Mathematics is a key tool that would enable you to do the same. So practice mathematics and be a great coder.
BECAUSE everyone wants to code and no one really wants to be a good mathematician which is the basic requirement to be a coder, yet very few know this fact and try to be a mathematician first than a coder.
What exactly is coding?
It is the process of solving different technical problems using a programming language. The technical problems can vary from printing a simple "Hello World" program to solving "2 SAT Problem" using mathematics.
You might today be able to solve a few problems using your technical skills but it would help you in the long run only if you're fundamentals of mathematics are also clear.
By mathematics, I don't mean the whole of it but some important topics such as Discrete Math, Algebra, Number Theory, etc.
Here are some concepts of mathematics that you will use mostly in solving the technical problems :
- Binary Exponentiation
- Euclidean algorithm for computing the greatest common divisor
- Extended Euclidean Algorithm
- Linear Diophantine Equations
- Fibonacci Numbers
- Sieve of Eratosthenes
- Sieve of Eratosthenes With Linear Time Complexity
- Primality tests
- Integer factorization
- Euler's totient function
- Number of divisors/sum of divisors
- Discrete Log
- Primitive Root
- Discrete Root
- Montgomery Multiplication
- Balanced Ternary
- Gray code
- Modular Inverse
- Linear Congruence Equation
- Chinese Remainder Theorem
- Factorial modulo
Go through the above topics as they are of utmost importance to all the coders.
Happy Coding !!!
quite useful
ReplyDelete