הבדלים בין גרסאות בדף "רקורסיה"

נוספו 238 בתים ,  לפני 4 חודשים
תגית: עריכת קוד מקור 2017
אלגוריתמים רקורסיביים נתמכים במרבית [[שפות תכנות|שפות התכנות]] על ידי תמיכה של השפה בקריאה רקורסיבית של פונקציות. עם זאת, לקריאות רקורסיביות (כמו ל[[קריאה לפונקציה|קריאות לפונקציות]] בכלל) ישנה עלות בזמן הריצה של התוכנית, ולכן מבצעות שפות תכנות רבות, ובפרט [[תכנות פונקציונלי|שפות פונקציונליות]], אופטימיזציה של קריאות רקורסיביות (הנקראות "[[רקורסיית זנב|רקורסיות זנב]]") והופכות קוד הנכתב באמצעות קריאות רקורסיביות לקוד ליניארי המבוצע בפועל באמצעות [[לולאה|לולאות]].
 
ישנן שפות רקורסיביות מעצם טבען{{הבהרה}}, שבהן אימות שאילתה מתבצע בעזרת קריאות חוזרות של סט החוקים הנתון עד לאימות השאילתה או ריצה על כל הפתרונות האפשריים (במקרה בו השאילתה פתוחה), כגון השפה הפונקציונלית [[LISP]] או השפה הלוגית [[פרולוג (שפת תכנות)|Prolog]].
 
=== עצרת ===