𝔖 Scriptorium
✦   LIBER   ✦

πŸ“

Dynamic Programming for Coding Interviews: A Bottom-Up Approach to Problem Solving

✍ Scribed by Meenakshi , Kamal Rawat


Publisher
Notion Press
Year
2017
Tongue
English
Leaves
136
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


I wanted to compute 80th term of the Fibonacci series. I wrote the rampant recursive function,

int fib(int n){

return (1==n || 2==n) ? 1 : fib(n-1) + fib(n-2);

}

and waited for the result. I wait… and wait… and wait…

With an 8GB RAM and an Intel i5 CPU, why is it taking so long? I terminated the process and tried computing the 40th term. It took about a second. I put a check and was shocked to find that the above recursive function was called 204,668,309 times while computing the 40th term.

More than 200 million times? Is it reporting function calls or scam of some government?

The Dynamic Programming solution computes 100th Fibonacci term in less than fraction of a second, with a single function call, taking linear time and constant extra memory.

A recursive solution, usually, neither pass all test cases in a coding competition, nor does it impress the interviewer in an interview of company like Google, Microsoft, etc.

The most difficult questions asked in competitions and interviews, are from dynamic programming. This book takes Dynamic Programming head-on. It first explain the concepts with simple examples and then deep dives into complex DP problems.

✦ Subjects


Dynamic Programming, Coding Interview


πŸ“œ SIMILAR VOLUMES


Dynamic Programming for Coding Interview
✍ Meenakshi , Kamal Rawat πŸ“‚ Library πŸ“… 2017 πŸ› Notion Press 🌐 English

I wanted to compute 80th term of the Fibonacci series. I wrote the rampant recursive function, int fib(int n){ return (1==n || 2==n) ? 1 : fib(n-1) + fib(n-2); } and waited for the result. I wait… and wait… and wait… With an 8GB RAM and an Intel i5 CPU, why is it taking so long?

Introduction to Programming with Java: A
✍ John Dean, Ray Dean πŸ“‚ Library πŸ“… 2020 πŸ› McGraw-Hill Education 🌐 English

Introduction to Programming with Java: A Problem Solving Approach teaches the reader how to write programs using Java. It does so with a unique approach that combines fundamentals first with objects early. The book transitions smoothly through a carefully selected set of procedural programming funda

Introduction to Programming with Java: A
✍ John Dean, Ray Dean πŸ“‚ Library πŸ“… 2020 πŸ› McGraw-Hill Education 🌐 English

Introduction to Programming with Java: A Problem Solving Approach teaches the reader how to write programs using Java. It does so with a unique approach that combines fundamentals first with objects early. The book transitions smoothly through a carefully selected set of procedural programming funda

Introduction to Programming with Java: A
✍ John Dean, Ray Dean πŸ“‚ Library πŸ“… 2007 πŸ› McGraw-Hill Higher Education 🌐 English

This book teaches the reader how to write programs using Java. It does so with a unique approach that combines fundamentals first with objects early. The book transitions smoothly through a carefully selected set of procedural programming fundamentals to object-oriented fundamentals. During this ear