דפי עזר למבחן בקומבינטוריקה למדעי המחשב
Transcription
דפי עזר למבחן בקומבינטוריקה למדעי המחשב
דפי עזר למבחן בקומבינטוריקה למדעי המחשב חלק א' :קומבינטוריקה. עקרון החיבור והכפל • עקרון החיבור :אם אפשר לבחור "משהו" אחד שנסמנו ב־ Aב־ nAאופנים ,ו"משהו" אחר שנסמנו ב־ Bב־ nBאופנים, אזי לבחירת אחד מן השניים )או Aאו ,(Bאבל לא שניהם ,יש nA + nBאופנים. • עקרון הכפל :אם אפשר לבחור את האיבר Aב־ nAאופנים ,ולאחר כל בחירה כזו אפשר לבחור את האיבר Bב־ nB אופנים ,אזי לבחירת שניהם בסדר הנ"ל ) Aולאחריו (Bיש nA nBאפשרויות. בחירת kמתוך nאיברים צירופים ־ סדר לא חשוב חליפות ־ סדר חשוב בלי חזרות עם חזרות !n !(n−k)!k = n+k−1 k n k !n !)(n−k = Cnk = CCnk = Pnk P Pnk = nk תמורות )סידור nאיברים( • בלי חזרות.n! : • עם חזרות כאשר נתונים q1איברים מסוג q2 ,1איברים מסוג qt ,... ,2איברים מסוג :t הבעיות הבאות הן שקולות • בחירה של kמתוך nסוגים עם חזרות כאשר הסדר לא חשוב. • חלוקת kכדורים זהים ל nתאים שונים. • מספר הפתרונות של המשוואה x1 + x2 + ... + xn = kכאשר xiטבעיים )כולל אפס(. עקרון שובך היונים המוכלל בכל חלוקה של nיונים ל־ mתאים ,קיים תא שבו לפחות n m יונים. בינום ניוטון i n−i • לכל xו־ yולכל nחיובי שלם מתקיים: Pn • מקרה פרטי חשוב.(1 + x)n = i=0 ni xi : xy Pn n i=0 i n = ).(x + y !) 2 +...+qt . (qq11+q ! ! q2 ! ... qt סכום של סדרות • סדרה חשבונית: an = a1 + (n − 1) · d n P = Sn ) ai = n·(a12+an i=1 • סדרה הנדסית: an = a1 · q n−1 n P n −1 = Sn ai = a1 · qq−1 i=1 עיקרון ההכלה וההפרדה נתונים nאיברים ונתונות tתכונות .P1 , P2 , ..., Pt :הגדרנו: • ) - W (Pi1 , Pi2 , ..., Pirמספר האיברים המקיימים כל אחת מהתכונות .Pi1 , Pi2 , ..., Pir • .W (0) = n • ) W (Pi1 , Pi2 , ..., Pir P 1≤i1 <i2 <...<ir ≤t = ).W (r r Pt )r=0 (−1 = ).E(0 משפט) :עקרון ההכלה וההפרדה( מספר איברים שלא מקיימים אף תכונהW (r) : Pt r .E(m) = r=m (−1)r−m m משפט) :הרחבה( מספר איברים בעלי mתכונות בדיוק הינו )W (r פתרון משוואות נסיגה ־ שיטת משוואה אופיינית עבור נוסחת נסיגה Sn = aSn−1 + bSn−2 נגדיר את המשוואה האופיינית להיות: b 6= 0 x2 − ax − b = 0, .1אם למשוואה האופיינית שני שורשים שונים ,r1 , r2אזי הפתרון של נוסחת הנסיגה הנ"ל הוא Sn = c1 r1n + c2 r2n כאשר c1 , c2קבועים הנקבעים ע"י .S0 , S1 .2אם למשוואה אופיינית שורש אחד rאזי Sn = c1 rn + c2 nrn−1 כאשר c1 , c2קבועים הנקבעים ע"י .S0 , S1 פונקציות יוצרות א= 1 + x + x2 + . . . + xm . ב. ג. ד. ה. ו. 1 1−x m+1 1−x 1−x = 1 + x + x2 + . . . Pn (1 + x)n = r=0 nr xr Pn (1 − xm )n = r=0 (−1)r nr xrm ∞P P∞ n+r−1 r 1 r r x = r=0 CCn x r=0 r = (1−x)n P P P∞ Pr ∞ ∞ אם f (x) = i=0 ai xiו־ g(x) = i=0 bi xiאזי h(x) = f (x) · g(x) = r=0 ( i=0 ar−i bi ) xr חלק ב' :תורת הגרפים. הגדרות • גרף לא מכוון ) G(V, Eהינו מבנה המורכב מקבוצת הצמתים } ,V = {v1 , v2 , . . .וקבוצת קשתות,E = {e1 , e2 , . . .} , כאשר כל קשת היא זוג לא סדור של צמתים מ־ .Vקשת } e = {u, vתסומן ב־ .u e vבמקרה בו יש בגרף קשתות מקבילות ,כל קשת תסומן ע"י מזהה ייחודי. e • בגרף מכוון כל קשת היא זוג סדור של צמתים .נסמן u −→ vונאמר שהקשת eמכוונת מצומת uלצומת vאו יוצאת מצומת uונכנסת לצומת .v • גרף התשתית של גרף מכוון הוא הגרף הבלתי מכוון המתקבל בהסרת הסדר בין הצמתים בכל קשת )"הסרת כיווני הקשתות"(. • גרף ) G(V, Eהוא סופי אם | |Vו־ | |Eהם סופיים .אחרת הוא ייקרא גרף אינסופי. • קשת ששני צמתי הקצה שלה הם אותו צומת תיקרא לולאה עצמית או חוג עצמי. • בגרף לא מכוון ,שתי קשתות ששני צמתי הקצה שלהן זהים הן קשתות מקבילות .בגרף מכוון נבדיל בין קשתות מקבילות e2 e2 e1 e1 → (u −לבין קשתות אנטי־מקבילות )v )v → u −ו־ u → u −ו־ v →.(v − • גרף פשוט הינו גרף ללא לולאות עצמיות וללא קשתות מקבילות. • גרף ייקרא מלא אם הוא גרף פשוט שיש בו קשת מכל צומת לכל צומת אחר .אם יש בו nצמתים הוא נקרא גם קליקה מסדר nומסומן .Kn • הדרגה ) d(vשל צומת vבגרף בלתי מכוון הוא סך כל מספר הפעמים בהן מופיע הצומת כקצה של קשת בגרף )בפרט, לולאה עצמית תורמת 2לדרגת הצומת( .בגרף מכוון מבחינים בין דרגת היציאה ) dout (vו־ דרגת הכניסה ) din (vשל צומת vשהם מספר הקשתות היוצאות )ובהתאמה הנכנסות( מהצומת. • מסלול ) (Pathבגרף הינו סדרת צמתים וקשתות מהצורה הבאה: e2 el v1 v2 · · · vl−1 vl e1 . v0 ניתן גם להתייחס למסלול כאל סדרת קשתות או כאל סדרת צמתים. • מעגל הוא מסלול שצומת ההתחלה שלו זהה לצומת הסיום. • מסלול פשוט הוא מסלול )לא מעגלי( בו אין צומת המופיע יותר מפעם אחת. • מעגל פשוט הוא מעגל בו אין צומת המופיע יותר מפעם אחת למעט צומת ההתחלה המופיע פעם אחת נוספת בתור צומת הסיום. • מסלול )מעגל( המילטוני הוא מסלול )מעגל( פשוט שעובר בכל צומת בגרף בדיוק פעם אחת. • גרף יקרא המילטוני)מעגלי( אם קיים בו מסלול )מעגל( המילטוני. • מסלול )מעגל( אוילרי בגרף סופי וקשיר הוא מסלול )מעגל( אשר עובר בכל קשת בגרף פעם אחת בדיוק. • גרף סופי וקשיר יקרא אוילרי )מעגלי( אם קיים בו מסלול)מעגל( אוילרי. • גרף בלתי מכוון ייקרא קשיר אם מכל צומת יש מסלול לכל צומת בגרף .גרף מכוון בו תנאי זה מתקיים ייקרא קשיר היטב. • גרף ) G0 (V 0 , E 0הוא תת־גרף של גרף ) G(V, Eאם V 0 ⊆ Vו־ .E 0 ⊆ Eתת־הגרף המושרה על־ידי קבוצת צמתים V 0הוא תת־הגרף ) G0 (V 0 , E 0בו E 0היא קבוצת כל הקשתות אשר שני קצותיהן ב־ .V 0 • רכיב קשיר הוא קבוצה מקסימאלית של צמתים V 0המשרה גרף קשיר ,כלומר קבוצת צמתים אשר הגדלתה תשרה גרף בלתי־קשיר .לעיתים נתייחס לתת־הגרף המושרה על־ידי V 0כאל רכיב קשיר. • גרף לא מכוון הוא יער אם הוא חסר מעגלים )פשוטים(. • גרף לא מכוון הוא עץ אם הוא קשיר וחסר מעגלים )פשוטים(. 0 • עץ ) T (V 0 , E 0נקרא עץ פורש של גרף ) G(V, Eאם הוא תת־גרף של Gו־ .V = V • בהנתן גרף מכוון ) ,G(V, Eצומת vהוא שורש של Gאם קיים מסלול מ־ vלכל צומת בגרף. • גרף מכוון ייקרא עץ מכוון אם יש לו שורש וגרף התשתית שלו הוא עץ. למה 1.1 הצמתים שדרגתם אי־זוגית הוא זוגי. בגרף סופי לא מכוון ) G = (V, EמספרP הלמה נובעת מהזהות |. v∈V d(v) = 2|E משפט 1.1 גרף סופי ,לא־מכוון וקשיר הוא גרף אוילרי אם ורק אם שני צמתים בדיוק הם בעלי דרגה אי־זוגית או כל הצמתים הם בעלי דרגה זוגית .במקרה השני ,כל מסלול הוא מעגל אוילר ,ובמקרה הראשון ־ כל מסלול אוילר אינו מעגל. משפט 1.2 גרף סופי ,מכוון וקשיר היטב הוא גרף אוילרי אם ורק אם ואחד התנאים הבאים מתקיים: .1לכל צומת ) dout (v) = din (v) ,vבמקרה זה הגרף הוא אוילרי מעגלי(. .2קיים צומת aעבורו dout (a) = din (a) + 1וקיים צומת אחר bעבורו ) ,dout (b) + 1 = din (bכאשר לכל צומת אחר vמתקיים )) dout (v) = din (vבמקרה זה הגרף הוא אוילרי לא מעגלי וכל מסלול אוילר מתחיל ב־ aומסתיים ב־.(b משפט 2.1 יהיה ) G = (V, Eגרף בלתי מכוון סופי או אינסופי .התנאים הבאים הם שקולים: א' Gהוא עץ. ב' Gחסר מעגלים פשוטים ,וכל הוספה של קשת ל־ Eתיצור מעגל פשוט. ג' לכל שני צמתים ב־) Gלאו דווקא שונים( קיים מסלול פשוט יחיד שמחבר ביניהם. ד' Gקשיר ,אבל הסרת כל קשת מ־ Eתקלקל את קשירות .G משפט 2.2 יהיה ) G = (V, Eגרף סופי לא מכוון .|V | = n ,שלושת התנאים הבאים הם שקולים א' Gהוא עץ. ב' Gחסר מעגלים פשוטים ויש לו n − 1קשתות. ג' Gקשיר ויש לו n − 1קשתות. משפט ) 2.4קיילי( מספר העצים הלא מכוונים הפורשים nצמתים מסומנים )שונים( הוא n−2 .nזהו גם מספר העצים הפורשים של .Kn משפט 2.5 יהיה ) G = (V, Eגרף מכוון .חמשת התנאים הבאים הם שקולים: א' Gהוא עץ מכוון. ב' ל־ Gיש שורש ,ולכל צומת ב־ Gקיים מסלול יחיד מהשורש אליו. ג' ל־ Gיש שורש rעבורו מתקיים ,din (r) = 0ולכל צומת אחר vבגרף ,מתקיים .din (v) = 1תנאי זה נקרא "תנאי הדרגות עבור ."r ד' ל־ Gיש שורש ,rאבל הסרת כל קשת מ־ Eתקלקל את שורשיות .r ה' גרף התשתית של Gהוא קשיר ול־ Gקיים צומת יחיד rעבורו מתקיים תנאי הדרגות. משפט 2.6 גרף סופי מכוון Gהוא עץ מכוון אם ורק אם גרף התשתית שלו חסר מעגלים פשוטים ,וקיים צומת יחיד rעבורו מתקיים תנאי הדרגות. עצים σ־מצביים עץ σ־מצבי הוא עץ מכוון שבו לכל צומת מתקיים :כל הקשת היוצאת ממנו מסומנת בסימון יחיד מהקבוצה }{0, 1, . . . , σ − 1 ואין שתי קשתות עם סימון זהה. מספרי קטלן • נוסחה סגורה: 2n n 1 n+1 = .Cn • נוסחה רקורסיביתCi Cn−i : Pn i=0 = .C0 = 1 ,Cn+1 • לכל הבעיות הבאות הפתרון הוא מספר קטלן :Cn – מספר סדרות מאוזנות של nזוגות סוגריים – מספר מסלולי הצעדי שריג החוקיים מ־ ) (0, 0ל־ ) (n, nשלא יורדים מתחת לאלכסון הראשי – מספר דרכים להכניס ולהוציא nאיברים זהים למחסנית – מספר העצים הבינאריים )2־מצביים( בני nצמתים – מספר חלוקות של מצולע קמור בן nצלעות למשולשים בקוים ישרים )לא נחתכים( המחברים את קודקודי המצולע.