Tôi đang tìm một ví dụ dễ hiểu cho người muốn học lập trình động. There are nice answers here about what is dynamic programming. Chuỗi fibonacci là một ví dụ tuyệt vời, nhưng nó quá nhỏ để làm xước bề mặt. Có vẻ như một chủ đề tuyệt vời để tìm hiểu về mặc dù tôi chưa học lớp thuật toán, hy vọng nó nằm trong danh sách của tôi cho mùa xuân.Một ví dụ đơn giản cho ai đó muốn hiểu Lập trình động
Trả lời
Tính khoảng cách Levenshtein là một trong những vấn đề đầu tiên tôi đã giải quyết bằng lập trình động; Tôi nghĩ rằng đó là một bước tiếp theo khá tốt từ chuỗi Fibonacci về độ phức tạp.
Kiểm tra trang web này: Dynamic Programming Practice Problems
Ý tưởng đằng sau quy hoạch động là bạn đang nhớ đệm (memoizing) giải pháp cho bài toán, mặc dù tôi nghĩ có nhiều điều hơn thế.
Có nhiều sự cố về Google Code Jam để các giải pháp yêu cầu lập trình động phải hiệu quả. Ví dụ:
Welcome to Code Jam (moderate)
Cheating a Boolean Tree (moderate)
Lưu ý rằng mỗi người trong các cuộc thi thực hành Mã Jam có một "Phân tích Cuộc thi" để biết nếu bạn đang bối rối cố gắng để giải quyết vấn đề.
Cảm ơn các tài nguyên. Tôi giải quyết một hoặc hai câu hỏi từ dự án euler theo thời gian, và có vẻ như tôi thực sự bị mắc kẹt ở một số vấn đề cần kiến thức về DP. – AraK
- Geeks for geeks có số lượng lớn collection các vấn đề về lập trình động. Tôi cảm thấy bộ này là một trong những điều tốt nhất nếu bạn chuẩn bị cho cuộc phỏng vấn.
- Nếu bạn muốn các video hướng dẫn nhỏ về các sự cố DP, bạn có thể kiểm tra this vấn đề được đặt từ MIT.
Here is a good tutorial bao gồm 29 vấn đề DP được giải quyết với giải thích tuyệt vời.
- 1. Muốn hiểu 6NF với một ví dụ
- 2. MKAnnotation, ví dụ đơn giản
- 3. Qt: Ví dụ đơn giản cho Quazip
- 4. ví dụ đơn giản cho Erlang memoization
- 5. MVC3 DropDownListFor - một ví dụ đơn giản?
- 6. Ai đó có thể cung cấp một ví dụ Python đơn giản cho các cập nhật trạng thái Twitter không?
- 7. Ví dụ đơn giản của tôi() ví dụ chỉ hoạt động một phần
- 8. Android Scroller ví dụ đơn giản
- 9. ANTLR: Có một ví dụ đơn giản không?
- 10. Ví dụ sự kiện luồng đơn giản
- 11. Ví dụ gọi lại RMI đơn giản
- 12. Ví dụ về Paypal IPN đơn giản?
- 13. boost :: thread - Ví dụ đơn giản không hoạt động (C++)
- 14. Có ai có ví dụ đơn giản về UserControl với một ContentPresenter duy nhất không?
- 15. Ví dụ về Deadlock đơn giản
- 16. UINavigationController: Ví dụ đơn giản nhất
- 17. Đẹp nhỏ ví dụ lập trình thực tế cuộc sống đơn giản trong Haskell?
- 18. Ví dụ đơn giản với Guice Servlets
- 19. Ví dụ open3 đơn giản không hoạt động
- 20. Hiểu các cuộc gọi LAPACK trong C++ với một ví dụ đơn giản
- 21. đơn giản TBB dụ
- 22. Ví dụ hoạt hình tween đơn giản
- 23. Ví dụ đơn giản C++ hash_set
- 24. Ví dụ đơn giản về DispatcherHelper
- 25. Ví dụ về tab kivy đơn giản
- 26. Một ví dụ phân tán đơn giản trong D3.js?
- 27. Giới thiệu hoặc ví dụ đơn giản cho iteratee?
- 28. Một AJAX đơn giản với ví dụ JSP
- 29. Ví dụ đơn giản của Masstransit với RabbitMQ
- 30. Bộ chọn ngày trong jqGrid, ví dụ đơn giản?
Xem bài giảng này từ MIT http://video.mit.edu/watch/introduction-to-algorithms-lecture-19-dynamic-programming-i-fibonacci-shortest-paths-14225/ và sau đó giải các vấn đề trên , sẽ giúp bạn hiểu tại sao DP lại hữu ích. – user504879
Trong khi liên kết này có thể trả lời câu hỏi, tốt hơn nên bao gồm các phần thiết yếu của câu trả lời ở đây và cung cấp liên kết để tham khảo. Câu trả lời chỉ liên kết có thể trở thành không hợp lệ nếu trang được liên kết thay đổi. - [Từ đánh giá] (/ đánh giá/bài đăng chất lượng thấp/17995545) – kometen