อะไรทำให้การเรียกซ้ำสับสน? เหตุผลหลักคือ เรากำลังดูฟังก์ชันเดียวกันโดยมีค่าตัวแปรท้องถิ่นต่างกัน เป็นสิ่งสำคัญมากที่จะต้องตรวจสอบให้แน่ใจว่ามีการใช้อินพุตใดอยู่ในขณะนี้เมื่อคุณกำลังวิเคราะห์ฟังก์ชันแบบเรียกซ้ำของฟังก์ชันแบบเรียกซ้ำ ฟังก์ชัน μ-recursive (หรือฟังก์ชันแบบเรียกซ้ำทั่วไป) คือ ฟังก์ชันบางส่วนที่ใช้ tuples ของจำนวนธรรมชาติจำนวนจำกัดและส่งคืน ตัวเลขธรรมชาติเดียว เป็นคลาสที่เล็กที่สุดของฟังก์ชันบางส่วนที่รวมฟังก์ชันเริ่มต้นและปิดภายใต้องค์ประกอบ การเรียกซ้ำแบบพื้นฐาน และตัวดำเนินการ μ https://en.wikipedia.org › wiki › General_recursive_function
ฟังก์ชันเรียกซ้ำทั่วไป - Wikipedia
การเรียกซ้ำยากไหม
แต่ยังมีโครงสร้างการควบคุมที่ทรงพลังอีกอย่างหนึ่ง: การเรียกซ้ำ การเรียกซ้ำเป็นหนึ่งในแนวคิดที่สำคัญที่สุดในวิทยาการคอมพิวเตอร์ แต่มักถูกมองว่าเป็น ส่วนที่ยากที่สุดในการเขียนโปรแกรมที่จะเข้าใจ หนังสือมักจะแนะนำช้ากว่าโครงสร้างการควบคุมแบบวนซ้ำมาก
ทำไมการเรียกซ้ำจึงไม่ดี
ร้าย. ในกรณีส่วนใหญ่ในภาษาการเขียนโปรแกรมที่จำเป็น ฟังก์ชันแบบเรียกซ้ำควรหลีกเลี่ยง (โปรดอย่าแสดงความเกลียดชังว่าสิ่งนี้ไม่เป็นความจริง 100% ตลอดเวลา) ฟังก์ชันแบบเรียกซ้ำมีประสิทธิภาพน้อยกว่าฟังก์ชันแบบวนซ้ำ นอกจากนี้ ยังต้องเผชิญกับอันตรายจากการล้นของสแต็ก
ปัญหากับการเรียกซ้ำคืออะไร
เรียกซ้ำคือเทคนิคอัลกอริทึมที่ฟังก์ชัน เพื่อที่จะทำงานให้สำเร็จ เรียกตัวเองด้วยบางส่วนของงาน ฟังก์ชันเรียกซ้ำเรียกตัวเองในเวอร์ชันที่ง่ายกว่าของปัญหาเพื่อพยายามลดความซับซ้อนของปัญหาจนถึงจุดที่สามารถแก้ไขได้
ทำไมการเรียกซ้ำจึงทรงพลัง
ด้วยการเรียกซ้ำ คุณยังได้รับประโยชน์เพิ่มเติมที่โปรแกรมเมอร์คนอื่นๆ สามารถเข้าใจโค้ดของคุณได้ง่ายขึ้น ซึ่งเป็นสิ่งที่ดีที่จะมีอยู่เสมอ การพูดซ้ำและการวนซ้ำ ทั้งคู่มีประสิทธิภาพเท่ากัน โซลูชันแบบเรียกซ้ำใดๆ สามารถนำมาใช้เป็นโซลูชันแบบวนซ้ำกับสแต็กได้