Máy vi tínhLập trình

Recursion là gì? Đệ quy trong lập trình (ví dụ)

Tham quan là những sự kiện thú vị trong bản thân họ, nhưng trong chương trình họ có tầm quan trọng đặc biệt trong các trường hợp cá nhân. Lần đầu tiên gặp họ, khá nhiều người gặp khó khăn với sự hiểu biết của mình. Điều này là do lĩnh vực rộng lớn của tiềm năng sử dụng của thuật ngữ này, tùy thuộc vào ngữ cảnh trong đó "đệ quy" được sử dụng. Nhưng bạn có thể hy vọng rằng bài báo này sẽ giúp tránh được một sự hiểu lầm hoặc hiểu lầm.

"Đệ quy" nói chung là gì?

Từ "đệ quy" có một phạm vi toàn bộ các giá trị phụ thuộc vào khu vực mà nó được áp dụng. Ký hiệu phổ quát là: các tham chiếu là các định nghĩa, hình ảnh, mô tả của các đối tượng hoặc quá trình trong các đối tượng. Chúng chỉ có thể được sử dụng trong những trường hợp đó khi đối tượng là một phần của chính nó. Theo cách riêng của họ xác định đệ quy của toán học, vật lý, lập trình và một số ngành khoa học khác. Thực tế ứng dụng, cô tìm thấy trong công việc của hệ thống thông tin và thí nghiệm vật lý.

Ý của bạn bằng cách đệ quy trong lập trình là gì?

Các tình huống đệ quy, hoặc đệ quy trong lập trình, là những khoảnh khắc khi các thủ tục hoặc chức năng của chương trình tự gọi. Tuy nhiên, điều lạ lùng đó có thể là âm thanh cho những người bắt đầu học lập trình, không có gì lạ về nó. Hãy nhớ rằng đệ quy không phải là khó khăn, và trong một số trường hợp họ thay thế chu kỳ. Nếu máy tính chỉ định một thủ tục hoặc một cuộc gọi chức năng, nó chỉ đơn giản bắt đầu thực hiện nó.

Việc đệ quy có thể là hữu hạn hoặc vô hạn. Để người trước đây ngừng tự gọi mình, cũng phải có điều kiện chấm dứt. Điều này có thể là giảm giá trị của biến và khi đạt đến một giá trị nhất định, hãy dừng cuộc gọi và chấm dứt chương trình / chuyển tiếp sang mã tiếp theo, tùy thuộc vào nhu cầu để đạt được một số mục tiêu nhất định. Trong đệ quy vô hạn, có nghĩa là nó sẽ được gọi trong khi máy tính hoặc chương trình đang chạy đang chạy.

Cũng có thể tổ chức đệ quy phức tạp bằng cách sử dụng hai chức năng. Giả sử có A và B. Một chức năng có một cuộc gọi trong mã B của nó, và B, nói với máy tính để thực hiện A. Đáp lại phức tạp là một cách ra khỏi một số tình huống logic phức tạp cho logic máy tính.

Nếu người đọc đọc những dòng này đã nghiên cứu các chu trình của chương trình, thì có lẽ ông ta đã nhận thấy sự tương đồng giữa chúng và đệ quy. Nói chung, họ thực sự có thể thực hiện nhiệm vụ tương tự hoặc giống hệt nhau. Với sự trợ giúp của đệ quy nó là thuận tiện để làm cho một giả của công việc của chu kỳ. Điều này đặc biệt hữu ích khi các chu trình của chúng không thuận tiện lắm. Đề án triển khai phần mềm không khác nhiều so với các ngôn ngữ lập trình cấp cao khác nhau. Nhưng vẫn còn các đệ quy trong "Pascal" và đệ quy trong C hoặc một ngôn ngữ khác có đặc thù riêng của mình. Nó có thể được thực hiện thành công trong các ngôn ngữ cấp thấp như "lắp ráp", nhưng điều này là nhiều vấn đề và tốn thời gian.

Cây của đệ quy

"Cây" trong chương trình là gì? Đây là tập hữu hạn bao gồm ít nhất một nút rằng:

  1. Nó có một nút đặc biệt ban đầu, được gọi là gốc của toàn bộ cây.
  2. Các nút còn lại có trong một số khác với số không, các tập con chia đôi, và chúng cũng là một cây. Tất cả các hình thức tổ chức như vậy được gọi là các nhánh phụ của cây chính.

Nói cách khác: cây chứa các cây con có chứa cây, nhưng ít hơn cây trước đó. Điều này tiếp tục cho đến khi một trong các nút có cơ hội để di chuyển xa hơn, và điều này sẽ chỉ ra sự kết thúc của đệ quy. Có thêm một sắc thái về hình ảnh sơ đồ: các cây thông thường phát triển từ dưới lên trên, và trong lập trình chúng được rút ra từ phía sau. Các nút không có đuôi mở rộng được gọi là các nút kết thúc. Để thuận tiện cho việc chỉ định và thuận tiện, thuật ngữ gia truyền (tổ tiên, trẻ em) được sử dụng.

Tại sao nó được sử dụng trong lập trình?

Việc sử dụng đệ quy trong lập trình đã tìm ra giải pháp cho một số vấn đề phức tạp. Nếu bạn chỉ cần thực hiện một cuộc gọi, thì dễ dàng hơn để sử dụng chu trình hội nhập, nhưng với hai hoặc nhiều lần lặp lại, để tránh xây dựng chuỗi và làm cho chúng thực hiện như một cây, và các tình huống đệ quy được áp dụng. Đối với một loạt các vấn đề, tổ chức của quá trình tính toán theo cách này là tối ưu nhất về tiêu thụ tài nguyên. Do đó, một đệ quy trong Pascal hoặc bất kỳ ngôn ngữ lập trình cấp cao khác là một cuộc gọi đến một hàm hoặc thủ tục trước khi các điều kiện được hoàn thành, bất kể số lượng các cuộc gọi bên ngoài. Nói cách khác, chương trình có thể chỉ có một truy cập vào chương trình con, nhưng nó sẽ xảy ra cho đến một thời điểm nhất định trước. Theo cách này, đây là một sự tương tự của chu kỳ với việc sử dụng cụ thể của nó.

Sự khác biệt của đệ quy trong các ngôn ngữ lập trình khác nhau

Mặc dù chương trình thực hiện chung và ứng dụng cụ thể trong từng trường hợp cụ thể, đệ quy trong lập trình có đặc điểm riêng. Điều này có thể dẫn đến khó khăn trong khi tìm kiếm các tài liệu cần thiết. Nhưng bạn nên luôn luôn nhớ: nếu một ngôn ngữ lập trình gọi các hàm hoặc các thủ tục, thì gọi đệ quy là một điều khả thi. Nhưng sự khác biệt đáng kể nhất của nó được thể hiện khi sử dụng các ngôn ngữ lập trình thấp và cao. Đặc biệt nó liên quan đến khả năng thực hiện phần mềm. Thực hiện cuối cùng phụ thuộc vào nhiệm vụ được thiết lập, phù hợp với nó, đệ quy được viết. Chức năng và thủ tục được sử dụng khác nhau, nhưng mục tiêu của họ là luôn luôn như nhau - để buộc mình để gọi mình.

Recursion là dễ dàng. Làm thế nào để chỉ cần nhớ nội dung của bài báo?

Đối với người mới bắt đầu hiểu nó, đầu tiên có thể khó khăn, vì vậy chúng ta cần các ví dụ của đệ quy hoặc ít nhất một. Do đó, chúng ta nên đưa ra một ví dụ nhỏ từ cuộc sống hàng ngày, điều này sẽ giúp hiểu được bản chất của cơ chế này để đạt được mục tiêu lập trình. Lấy hai hoặc nhiều gương, đặt chúng để tất cả những người khác được hiển thị trong một. Bạn có thể thấy rằng các gương hiển thị bản thân mình nhiều lần, tạo ra một hiệu quả của vô cực. Ở đây, các cuộc du ngoạn là, nói theo hình tượng, phản chiếu (sẽ có rất nhiều trong số đó). Như bạn thấy, nó là dễ hiểu, sẽ có một mong muốn. Và bằng cách học các tài liệu lập trình, bạn có thể hiểu thêm rằng đệ quy cũng là một nhiệm vụ rất dễ dàng.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 vi.birmiss.com. Theme powered by WordPress.