Algorithmic Problems in Java (+INTERVIEW QUESTIONS)
What you will learn

Understand backtracking

Understand dynamic programming

Understand recursive approaches

Solve problems from scratch
Curriculum
Section 1: Introduction
Section 2: Recursion
Section 3: Selection Algorithms
Section 4: Backtracking
Section 5: Dynamic Programming
Section 6: Other Algorithmic Problems
Section 7: Common Interview Questions
Course Description
Backtracking, dynamic programming, Sudoku, knapsack problem, binpacking, closest pair of points, recursion, monte carlo
Requirements
 Basic Java
Description
This course is about the fundamental concepts of algorithmic problems, focusing on backtracking and dynamic programming. As far as I am concerned these techniques are very important nowadays, algorithms can be used (and have several applications) in several fields from software engineering to investment banking or R& D.
Section 1:

what are recursion and recursive methods

linear and binary search

tower of Hanoi problem
Section 2:

what are selection algorithms

quickselect algorithm

the secretary problem
Section 3:

what is backtracking

nqueens problem and Hamiltonian cycle problem

knight's tour problem

Sudoku game
Section 4:

what is dynamic programming

knapsack problem

coin change problem and rod cutting problem
Section 5:

bin packing problem

closest pair of points problem
Section 6:

top interview questions (Google, Facebook and Amazon)
The first chapter is about backtracking: we will talk about problems such as nqueens problem or hamiltonian cycles, coloring problem and Sudoku problem. In the second chapter we will talk about dynamic programming, theory then the concrete examples one by one: fibonacci sequence problem and knapsack problem.
In each section we will talk about the theoretical background for all of these algorithms then we are going to implement these problems together from scratch in Java.
FINALLY YOU CAN LEARN ABOUT THE MOST COMMON INTERVIEW QUESTIONS (Google, MicroSoft, EPAM etc.)
Thanks for joining the course, let's get started!
Who this course is for:
 This course is meant for newbies who are not familiar with algorithmic problems in the main or students looking for some refresher