Xin chào các bạn, mình đang học thuật toán, mình tìm hiểu về Recursion (Đệ quy) và Dynamic Programming ( Quy hoạch động). Mình cũng nắm được cơ bản về khái niệm của 2 thuật toán này. Những bài toán recursion dễ, chẳng hạn như Fibonacci, factorial…mình có thể hiểu được và làm được, nhưng qua những bài toán phức tạp hơn thì mình không thể nào tìm được cách giải hoặc tồi tệ hơn là coi bài giải cũng không hiểu luôn.
Ví dụ như 1 trong bài toán trong link sau: http://stackoverflow.com/questions/25101870/algorithm-coin-changing-code-mistake.
Bài này thực sự cũng là đơn giản nhưng mình vẫn chưa hiểu được ý tưởng của thuật toán. Mình cũng thử in kết quả ra debug nhưng quả thực cũng không thể hiểu được tại sao lại như vậy.
Kể cả với thuật toán DP, mình cũng bị tương tự. Mong các bạn nào đã từng học qua rồi có thể cho mình biết hướng suy nghĩ của bạn hoặc cách giải quyết khi bạn gặp 1 vấn đề khi áp dụng 2 loại thuật toán này.
Cảm ơn các bạn.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?