Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Studies

אלגוריתמים

כעת, נפגש עם האלגוריתם הראשון שננתח בקורס. יתכן ויש לנו הבנה אינטואטיבית של המושג, אבל לשלמות רצוי שנגדיר אותו על מנת שכולנו נדבר את אותה השפה:

הגדרה: אלגוריתם הוא סדרת פעולות מדויקות לביצוע משימה או פתרון בעיה כלשהי המתחשב בכל המקרים האפשריים.

כלומר, בהנתן בעיה מסוימת, אלגוריתם הוא סדר פעולות שיש לבצע על מנת לקבל פתרון לבעיה.

הגדרה מדויקת של הבעיה היא קריטית לחלוטין על מנת למצוא לה פתרון. בדרך כלל בקורס נתאר בעיות בצורה של קלט ופלט - כלומר, בהנתן קלט מסוים, נרצה להפעיל אלגוריתם כלשהו על מנת לקבל פלט מסוים. כמה דוגמאות לבעיות:

  1. בהנתן מספר חיובי n, יש לקבוע האם הוא ראשוני או לא. הקלט הוא מספר חיובי והפלט הוא משתנה בוליאני שערכו true אם הקלט ראשוני ו-false אחרת.
  2. בהנתן מערך של ציונים במבחן, יש לחשב את הממוצע. הקלט הוא מערך הציונים והפלט הוא משתנה שמכיל את הממוצע שלהם.
  3. בהנתן מערך כלשהו של מספרים arr ומספר כלשהו x, יש לקבוע האם x נמצא במערך או לא. הקלט הוא מערך ומספר והפלט הוא משתנה בוליאני שערכו true אם x נמצא במערך ו-false אחרת.