Question:
What is the primary purpose of ‘Dynamic Programming’ compared to standard recursion?
मानक रिकर्शन की तुलना में ‘डायनामिक प्रोग्रामिंग’ का प्राथमिक उद्देश्य क्या है?
Options:
- To solve problems with overlapping subproblems and optimal substructure by caching subproblem solutions (memoization or tabulation)
- To randomize algorithm decisions to achieve expected linear time
- To avoid using iterative loops
- To guarantee that the call stack never overflows without memory overhead
- ओवरलैपिंग सब-प्रॉब्लम्स और ऑप्टिमल सबस्ट्रक्चर वाली समस्याओं को कैशिंग (मेमोइज़ेशन या सारणीकरण) द्वारा कुशलतापूर्वक हल करना
- रैंडम निर्णय लेना
- लूप्स के उपयोग से बचना
- कॉल स्टैक को ओवरफ्लो होने से बचाना
Correct Answer: a)
Explanation:
Dynamic Programming optimizes recursive algorithms that exhibit overlapping subproblems and optimal substructure by storing the results of subproblems in a table so each subproblem is solved only once.
डायनामिक प्रोग्रामिंग उन समस्याओं के लिए है जहाँ समान उप-समस्याएं बार-बार दोहराई जाती हैं। उनके उत्तरों को तालिका (टेबल) में सहेजकर समय की भारी बचत की जाती है।