Sự cần thiết của đệ quy trong lập trình

Mọi người cho mình hỏi là:
1 / Vai trò của đệ quy trong việc lập trình như thế nào, đặc biệt là nó có ứng dụng nhiều trong lập trình WEB hay không?
2/ Có nhất thiết phải học đệ quy không? bời vì nó khá rắc rối

Hồi làm con mã đi tuần ớn nhất cái đệ qui này, đệ qui bao nhiêu lần phải return về bấy nhiêu lần :hankey:

1 Like

Theo mình, nếu không còn cách nào giải ngoài đệ quy thì mới dùng. Không thì đừng dùng! Nhìn vào code đệ quy ta thấy nó ngắn gọn nhưng sẽ chạy chậm.

2 Likes

–> Trong web không có dùng đệ quy.

–> Nếu định hướng làm web thì không cần quan tâm.

  • Đệ quy cực kì quan trọng, nhất là đối với lập trình hàm, không thể thiếu đệ quy.
  • Web thì có thể có hoặc không
  • Tốt nhất là nên học, không quá khó để nắm bắt. Có thể biết thì nên biết thôi
3 Likes

Chưa nói đến web, làm winform chưa bao giờ dùng đến đệ quy.

1 Like

đệ quy là tác vụ bậc thấp, chạy chậm, chỉ dùng ở ngôn ngữ biên dịch để giải toán, xử lí trong !
Lập trình web toàn bộ là thông dịch, tuyệt đối không dùng, chỉ có khi viết module cho web engine bằng C/C++ thôi, đó không phải việc của web developer

  • Đệ quy là một kĩ thuật được tìm thấy trong lập trình.
  • Đệ quy khá quan trọng vì nó giúp người học nắm được sư vận hành của function và nó là nền tảng cho tư duy lập trình hướng hàm. Trước có học dùng lisp chẳng hiểu gì, xong đi ra aptech chơi gặp 1 anh giảng cho về đệ quy bỗng nhiên cảm thấy thấu hiểu.
  • Đệ quy giúp bài toán ngắn gọn hơn nhưng khó debug hơn. Trong web thì không thấy cần nhiều nhưng trong một vài lĩnh vực toán học thì đã từng có bài toán mình bắt buộc phải dùng.
  • Học làm web thì không nên dùng.
1 Like

Đệ quy là 1 phương pháp cơ bản trong kỹ thuật lập trình. Bạn cần phải biết để có thể giải quyết các bài toán ở mức nhỏ. Nhưng thường thì những thuật toán này người ta đã cài đặt hết trong các thư viện rồi, ít khi chúng phải tự cài đặt. Theo mình, nếu bạn là học sinh hoặc sinh viên thì nên cài đặt các phương pháp cơ bản của kỹ thuật lập trình trong đó có đệ quy.
Lập trình Web là một lĩnh vực rộng nên rất khó trả lời câu hỏi của bạn. Có 2 phần là front-end và back-end. Rõ ràng những người làm Front-end thì chẳng bao giờ dùng đến thuật toán rồi. Còn về back-end thì tùy thuộc web của bạn có giải quyết các bài toán hay không, có cần phải cài đặt các thuật toán hay không? Thi thoảng mình cũng cài đặt các thuật toán (trong các dự án của công ty) nhưng phần nhiều là ít khi phải tự cài đặt các thuật toán này.
For a brighter future! http://chingovan.blgospot.com

Học thêm đệ quy giống như học thêm một cách giải toán mới trong một bài toán có nhiều cách giải. Học thì nên học nhưng việc áp dụng thì nên hạn chế. Nói chung là học đệ quy giúp cho não ta thêm nhiều nếp nhăn :smile:

tùy vào trường hợp mà đặt ra có nên dùng hay ko, nhưng mà nếu có thể viết bằng loop bình thường được thì nên tránh đệ quy ra, bởi vì compiler cao cấp sẽ áp dụng tail call optimization. Có 1 vài trường hợp áp dụng đệ quy sẽ tránh được sự mệt nhọc , ví dụ như duyệt tập tin và đường dẫn, duyệt đồ thị, cây…

Làm web bạn sẽ gặp nhiều cái menu đa cấp, không có đệ quy bạn duyệt cái menu đó kiểu gì? Nói chung cái gì người ta dạy thì mình cũng nên học. Chẳng thừa.

Cũng phải, nhưng về sau mấy tác vụ này sẽ được compile hết thành module để import vào sài, mình lập trình thông dịch chỉ ứng dụng chúng thôi, nói chung đệ quy nên ở code biên dịch
:slight_smile:

tại sao lại không dùng lập trình động thay cho đệ quy?

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