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

מושג בסיסי של התפלגות וכיבוש

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

דוגמאות מעשיות

דוגמה נפוצה אחת היא אלגוריתם Mergeמיין.It מחלק מערך לhalves, סוגים של כל מחצית recursively, ולאחר מכן ממזג את הלווינים המנוונים. שיטה זו יעילה סוגים של נתונים גדולים עם השוואות מינימליות.

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

יתרונות של התפלגות וכיבוש

  • צמצום המורכבות
  • המונחים: Parallel processing
  • שיפור יעילות האלגוריתם
  • פתרון בעיות חוזר