Lecture 10 of Geiger & Itai s slide brochure Median/sort. pivot. Geiger & Itai, 2001

Σχετικά έγγραφα
משוואות רקורסיביות רקורסיה זו משוואה או אי שוויון אשר מתארת פונקציה בעזרת ערכי הפונקציה על ארגומנטים קטנים. למשל: יונתן יניב, דוד וייץ

(2) מיונים השאלות. .0 left right n 1. void Sort(int A[], int left, int right) { int p;

מבני נתונים ויעילות אלגוריתמים

פתרון תרגיל מרחבים וקטורים. x = s t ולכן. ur uur נסמן, ur uur לכן U הוא. ur uur. ur uur

חורף תש''ע פתרון בחינה סופית מועד א'

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

פתרון תרגיל 5 מבוא ללוגיקה ותורת הקבוצות, סתיו תשע"ד

פתרון תרגיל 8. מרחבים וקטורים פרישה, תלות \ אי-תלות לינארית, בסיס ומימד ... ( ) ( ) ( ) = L. uuruuruur. { v,v,v ( ) ( ) ( ) ( )

מיונים א': מיון (Sorting) HeapSort. QuickSort תור עדיפויות / ערימה

הגדרה: קבוצת פעילויות חוקית היא קבוצה בה כל שתי פעילויות

Logic and Set Theory for Comp. Sci.

תוכן הפרק: ,best case, average case דוגמאות 1. זמן - נמדד באמצעות מס' פעולות סיבוכיות, דוגמאות, שיפור בפקטור קבוע האלגוריתם. וגודלם. איטרטיביים. לקלט.

לוגיקה ותורת הקבוצות פתרון תרגיל בית 8 חורף תשע"ו ( ) ... חלק ראשון: שאלות שאינן להגשה נפריד למקרים:

מתמטיקה בדידה תרגול מס' 5

לדוגמה: במפורט: x C. ,a,7 ו- 13. כלומר בקיצור

( )( ) ( ) f : B C היא פונקציה חח"ע ועל מכיוון שהיא מוגדרת ע"י. מכיוון ש f היא פונקציהאז )) 2 ( ( = ) ( ( )) היא פונקציה חח"ע אז ועל פי הגדרת

תרגול פעולות מומצאות 3

לוגיקה ותורת הקבוצות פתרון תרגיל בית 4 אביב תשע"ו (2016)

logn) = nlog. log(2n

תרגול מס' 6 פתרון מערכת משוואות ליניארית

תכנון אלגוריתמים 2016 עבודה 1 שאלה 1 פתרון נתונות שתי בעיות. יש למצוא: אורך מסלול קצר ביותר המתחיל באחד מן הקודקודים s 1,..., s k ומסתיים ב t.

חישוביות הרצאה 4 לא! זיהוי שפות ע''י מכונות טיורינג הוכחה: הגדרת! : f r

סדרות - תרגילים הכנה לבגרות 5 יח"ל

תרגיל 7 פונקציות טריגונומטריות הערות

מודלים חישוביים תרגולמס 5

Hash Tables (המשך) ערבול (Hashing)

ל הזכויות שמורות לדפנה וסטרייך

= 2. + sin(240 ) = = 3 ( tan(α) = 5 2 = sin(α) = sin(α) = 5. os(α) = + c ot(α) = π)) sin( 60 ) sin( 60 ) sin(

Algorithms on Strings, Trees, and Sequences, Dan Gustfield Chapter 5, 7.3, 7.4, 7.17

השאלות..h(k) = k mod m

שאלה 1 V AB פתרון AB 30 R3 20 R

x a x n D f (iii) x n a ,Cauchy

תוכן עניינים I בעיות מיון 2 1 סימון אסימפטוטי... 2 II מבני נתונים 20 8 מבני נתונים מופשטים משפט האב גרפים... 37

{ : Halts on every input}

brookal/logic.html לוגיקה מתמטית תרגיל אלון ברוק

שדות תזכורת: פולינום ממעלה 2 או 3 מעל שדה הוא פריק אם ורק אם יש לו שורש בשדה. שקיימים 5 מספרים שלמים שונים , ראשוני. שעבורם

יסודות לוגיקה ותורת הקבוצות למערכות מידע (סמסטר ב 2012)

תרגיל 13 משפטי רול ולגראנז הערות

מתמטיקה בדידה תרגול מס' 13

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

מתכנס בהחלט אם n n=1 a. k=m. k=m a k n n שקטן מאפסילון. אם קח, ניקח את ה- N שאנחנו. sin 2n מתכנס משום ש- n=1 n. ( 1) n 1

מבני נתונים מבחן מועד ב' סמסטר חורף תשס"ו

אלגברה ליניארית (1) - תרגיל 6

I. גבולות. x 0. מתקיים L < ε. lim אם ורק אם. ( x) = 1. lim = 1. lim. x x ( ) הפונקציה נגזרות Δ 0. x Δx

לוגיקה ותורת הקבוצות מבחן סופי אביב תשע"ב (2012) דפי עזר

תורת הקבוצות תרגיל בית 2 פתרונות

[ ] Observability, Controllability תרגול 6. ( t) t t קונטרולבילית H למימדים!!) והאובז' דוגמא: x. נשתמש בעובדה ש ) SS rank( S) = rank( עבור מטריצה m

חידה לחימום. כתבו תכappleית מחשב, המקבלת כקלט את M ו- N, מחליטה האם ברצוappleה להיות השחקן הפותח או השחקן השappleי, ותשחק כך שהיא תappleצח תמיד.

תרגול 1 חזרה טורי פורייה והתמרות אינטגרליות חורף תשע"ב זהויות טריגונומטריות

קבוצה היא שם כללי לתיאור אוסף כלשהו של איברים.

gcd 24,15 = 3 3 =

. {e M: x e} מתקיים = 1 x X Y

"קשר-חם" : לקידום שיפור וריענון החינוך המתמטי

תורת המספרים 1 פירוק לגורמים ראשוניים סיכום הגדרות טענות ומשפטים אביב הגדרות 1.2 טענות

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

מבני נתונים (234218) 1

תרגול מס' 1 3 בנובמבר 2012

אסימפטוטיים תוכנית הקורס עצי AVL עצי 2-3 עצי דרגות סיבוכיות משוערכת מיון מיון שימושים: גרפים איסוף אשפה

לוגיקה ותורת הקבוצות מבחן סופי אביב תשע"ד (2014) דפי עזר

c ארזים 26 בינואר משפט ברנסייד פתירה. Cl (z) = G / Cent (z) = q b r 2 הצגות ממשיות V = V 0 R C אזי מקבלים הצגה מרוכבת G GL R (V 0 ) GL C (V )

תשובות מלאות לבחינת הבגרות במתמטיקה מועד ג' תשע"ד, מיום 0/8/0610 שאלונים: 315, מוצע על ידי בית הספר לבגרות ולפסיכומטרי של אבירם פלדמן

חלק א' שאלה 3. a=3, b=2, k=0 3. T ( n) היותר H /m.

בסל A רמת התועלת היא: ) - השקה: שיפוע קו תקציב=שיפוע עקומת אדישות. P x P y. U y P y A: 10>6 B: 9>7 A: 5>3 B: 4>3 C: 3=3 C: 8=8 תנאי שני : מגבלת התקציב

מבני נתונים הגבלת אחריות פרק - 1 אלגוריתמי מיון ואנליזה אסימפטוטית. מיון בועות Sort Bubble מאת : סשה גולדשטיין,

אלגברה מודרנית פתרון שיעורי בית 6

ההוצאה תהיה: RTS = ( L B, K B ( L A, K A TC C A L K K 15.03

תרגול 8: מטלאב לולאות

פתרון תרגיל בית 6 מבוא לתורת החבורות סמסטר א תשע ז

תרגול משפט הדיברגנץ. D תחום חסום וסגור בעל שפה חלקה למדי D, ותהי F פו' וקטורית :F, R n R n אזי: נוסחת גרין I: הוכחה: F = u v כאשר u פו' סקלרית:

חשבון אינפיניטסימלי 1

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

רשימת משפטים והגדרות

פתרון תרגיל 6 ממשוואות למבנים אלגברה למדעי ההוראה.

1 תוחלת מותנה. c ארזים 3 במאי G מדיד לפי Y.1 E (X1 A ) = E (Y 1 A )

אוגרים: Registers מונים: Counters

3-9 - a < x < a, a < x < a

TECHNION - ISRAEL INSTITUTE OF TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE סמסטר אביב תשס"ו מס' סטודנט:

מתמטיקה בדידה תרגול מס' 12

C.C Ωשרשרת. Eחסומה. E אם לכל x Rb x E

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

רשימת בעיות בסיבוכיות

אוטומטים- תרגול 8 שפות חסרות הקשר

משפטי בקרה ולולאות שעור מס. 3 כל הזכויות שמורות דר' דרור טובי המרכז האוניברסיטאי אריאל

השאלות ידי מצביעים לילדים.

םימתירוגלאל אוב מו םינותנ ינבמ ןייטשניבור רימא

מינימיזציה של DFA מינימיזציה של הקנוני שאותה ראינו בסעיף הקודם. בנוסף, נוכיח את יחידות האוטומט המינימלי בכך שנראה שכל אוטומט על ידי שינוי שמות

מבני נתונים. (ב) ואז הוא הופך למערך המייצג את האינדקס האחרי אחרון של כל מספר: c

סיכום- בעיות מינימוםמקסימום - שאלון 806

תכנון דינאמי. , p p p והמטריצה המתקבלת היא בגודל

הרצאה תרגילים סמינר תורת המספרים, סמסטר אביב פרופ' יעקב ורשבסקי

מיון. 1 מיון ערימה (Heapsort) חלק I 1.1 הגדרת ערימה 0.1 הגדרה של המושג מיון מסקנה: הערך הכי גבוה בערימה נמצא בשורש העץ!

גבול ורציפות של פונקציה סקלרית שאלות נוספות

αὐτόν φέρω αὐτόν τὸ φῶς τὸ φῶς αὐτόν τὸ φῶς ὁ λόγος ὁ κόσμος δι αὐτοῦ ἐγένετο, καὶ ὁ κόσμος αὐτὸν οὐκ ἔγνω αὐτόν

ניתוח סיבוכיות - פונקציות רקורסיביות פיתוח טלסקופי

מבני נתונים אדמיניסטרציה ד"ר אלכס סמורודניצקי, רוס 210, שני 5:30 4:15. ציון:

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

תורת הגרפים - סימונים

אלגברה א' - פתרונות לשיעורי הבית סמסטר חורף תשס"ט

אלגברה ליניארית 1 א' פתרון 2

אינפי - 1 תרגול בינואר 2012

Transcript:

Media/sort O() זמן. Lecture 0 of Geiger & Itai s slide brochure www.cs.techio.ac.il/~dag/courseds מציאת האי בר ה- i בגו ד לו (ל לא מיו ן) למציאת איבר מינימלי (מקסימלי) במערך נדרשת איטרציה אחת של BubbleSort הלוקחת האם ניתן למצוא את האיבר השני, השלישי, או האיבר בעל דרגה i בזמן O()? ניתן כמובן למיין, אבל כל אלגוריתם מיון למספרים כלליים דורש ( Ω( log זמן (כפי שנוכיח בקרוב). נראה ראשית פתרון בזמן O() בממוצע. pivot הפתרון משתמש ברעיון דומה ל-.QuickSort למציאת האיבר ה- i בגודלו נבצע רקורסיבית את הפעולות הבאות: 7 9 8 בחר באקראי איבר ציר. pivot חלק את המערך לשני חלקים. האברים הקטנים מ- pivot יאוחסנו בחלק השמאלי של המערך, והגדולים או שווים ל- pivot בחלק הימני של המערך. אחד צ עד q 7 9 (נניח ש- q הוא מספר האיברים בחלק השמאלי של המערך) 8 אם q i אז מצא רקורסיבית את האיבר ה- i בחלק השמאלי של המערך. אחרת, מצא רקורסיבית את האיבר ה- i-q בחלק הימני של המערך. Geiger & Itai, 00

Media/sort ד וגמ א מלאה תו צאת ההגרלה pivot= 7 q 9 8 מ צא את המספר הרבי ע י ב ג ודלו ב מ ע רך הבא: 7 9 8 pivot= 7 * * 7 9 8 מצא את המספר השני בגודלו במערך הבא: q * * 7 9 8 pivot= * * q * * * מ צא את המספר הש נ י ב ג ודלו במ ע ר ך הבא: * * * * * cs,techio מצא את המספר הראשון בגודלו במערך הבא: * * * * * *

Media/sort ניתו ח ז מנים הציר. באיבר תלוי הריצה זמן T ( ) = c T ( / ) = c( / / 4... ) = c מקרה אופטימלי. חציון. הוא הציר איבר T ( ) = Θ( ) QuickSort אחד של מופע מכילה זו נסיגה משוואת ( T(/ בניגוד לניתוח האופטימלי של ולכן פתרונה ליניארי ולא (.Θ( log מקרה גרוע. בכל שלב המערך קטן באחד בלבד. T ( ) = c T ( ) = c( ( )...) = Θ( ) cs,techio

Media/sort ניתו ח ז מנים במק ר ה הממוצע 4 T ( ) T ( ) k = T k = / ( max{ k, k } ) d T ( k ) d מקרה ממוצע: איבר הציר הוא אקראי. ניתן ל"תקן" את partitio כך שנחלק -: גם אם יבחר אבר ציר בעל rak= = 6 המחשה: k = 4 6 k-= 0 4 -k = 6 4 Max = 6 4 4 = המחשה: k = 4 K-= 0 4 k = 4 Max = 4 4 cs,techio

Media/sort פתרו ן משו וא ת הנסי ג ה T ( ) T ( ) k = / T ( k ) d לאחר התיקון:.T() נוכיח ב אינדוקציה שמתקיים T() c עבור קבוע c מתאים המקיים c על הל וח! cs,techio

Media/sort מק ר ה פרטי: מציאת חצ י ו ן 6 למציאת חציון נפעיל את האל גוריתם שפתחנו למציאת האיבר ה- /() בגודלו..O() זמן הריצה, כפי שראינו הוא cs,techio

Media/sort מציאת האי בר ה- i בגו ד לו (אל ג ו ר יתם דטרמינ יס טי) 7 הזמן הדרוש לאלגוריתם שתיארנו תלוי בגודל המערך בכל קריאה רקורסיבית. אם נבטיח שבכל קריאה רקורסיבית גודל המערך קטן "בצורה משמעותית", אזי זמן הריצה במקרה הגרוע ביותר יהיה.O() הבעיה נוצרת כאשר החלוקה לשתי קבוצות אינה מאוזנת ומשאירה קבוצה אחת שבגודלה קרובה מדי לגודל הקבוצה המקורית. נרצה שב כ ל שלב, האלגוריתם יב צ ע ח לוקה לשתי קבוצות כך שהגדולה עדיין קטנה משמעו תית מהק בוצ ה המקורית. ארב עת השל בים הראשונים של האלגוריתם הב א מוצ אים ח לוקה כז ו. cs,techio

Media/sort האלגוריתם i) Select(A, first, last, חלק את מערך הקלט A לחמישיות. מצא חציון של כל חמישייה. הכנס את החציונים למערך B (שגודלו בערך חמישית המערך A). הפעל את Select רקורסיבית על המערך B למציאת חציון של החציונים (נקרא לו x).. (x לפי A המערך (חלוקת s =Partitio(A,first,last,x) אם Select(A, first, s -, i), s first i Select(A, s, last, i - (s-first) ) אחרת,....4..6 8 האיברים בפינה הש מאלית גדולים א ו ש ו וים ל- x x האיברים בפינה הימ נ ית קט נים א ו שו ו ים ל- x

cs,techio 9 Media/sort ו רצ ונש תו צו בקה לד ו ג ח ותינ,םינויצ חה ןוי צ ח אוה x-ש ןויכ םנשיו תוחפלש םייקתמ,םינויצ ח / םינטק / /.x-ל םיווש וא.םינוש םירביאה לכש חיננ חותינה תוטשפ םשל ילוא טרפ) x -מ םינטקה םירביא השולש םנשי x-ל הווש וא ןטקה ןויצ ח לש הצו בק ל כ ב הב ה צ ובקלו םירביא השימח ןיא הב תחאה הצוב קל.(א צמנ x :תוחפל אוה x-מ םילודגה םירביאה רפסמ,המוד הרוצ ב 6 0,ןא כמ לש תיביסרוקר האירק לכב רתויה לכל אוה טלקה לדוג select. 6 0 7 6 0 :תוחפל אוה x-מ םינטקה םירביאה רפסמ ךכיפל

Media/sort ניתו ח ז מן הר יצ ה 7 T ( ) T T 6 O( נוסחת הנסיגה עבור זמן הריצה מקיימת: ( 0 טענה: O().T() = ההוכחה באי נדוקציה. 0 יהי d הק בוע הנח בא ב סימון O בנוסח ת הנסיגה 80 מתקיים יהי יהי נגדיר ) T ( (ברור שקיים!) c c = c = 80d c קבוע כך שעבור max{ c, c }. בסיס האינדוקציה: 80 T()c : הנחת האינדוקציה (80<) : לכל k< מתקיים T(k)c cs,techio

Media/sort T ( ) cs,techio נוסחת הנסיגה: ניתו ח ז מן הר יצ ה 7 T ( ) T T 6 O( ) 0 = c c c c c T()c : T(k)c מתקיים k< לכ ל : (>80) ( ) 7 c 6 0 c c( 7 6) 9 0 9 0 (7c 7c 7c 0 c d c 80 7 80 ) = d 7 80 c d c 7c בסיס האינדוק ציה: 80 d הנ חת האינדוק ציה צע ד ה אינדוק ציה: = c / 80 c / 80

Media/sort חסם תחתון למי ו ן ע"י השו וא ות מערך A לקבל ברצוננו נניח האיברים את ולסדר שונים איברים בן ממוינים פלט. במערך לדוגמא : פרמוטציה π מגדירה שונים מספרים בת סדרה כל על האינדקסים של הקלט. מערך 8 47 4 7 8 6 π()=6, π()=, π()=, π(4)=, π()=,π(6)=4 :σ=π - פרמוטציה וכן הופכית 8 47 7 8 σ()=, σ()=, σ()=, σ(4)=6, σ()=4, σ(6)= 4 6 מערך A פרמוטציה σ כקלט מקבל מיון אלגוריתם כפלט ומוציא כך שיתקיים [σ()] A[σ()] < A[σ()] < < A כל פרמוטציה אפשרית כפלט גודלו היחסי בסדרת הקלט. כיון שהאיבר ה-[ A[i יכול קיימות! פרמוטציות. לפי הפלט במערך מקום לכל להגיע cs,techio אפשרית? כמה שאלות צריכות כן/ לא שנותרת עד להישאל פרמוטציה אחת

Media/sort חסם תחתון למי ו ן ע"י השו וא ות (המשך ( נקבעת משפט : כל אלגוריתם מיון הפועל באמצעות השוואות בלבד דורש לפחות O() log - השוואות. הדגשה : האלגוריתם אינו מבצע, לדוגמא, פעולות אריתמטיות על סדרת הקלט. הוכחה : יהי Alg אלגוריתם מיון ע"י השוואות. לכל קלט האלגוריתם מבצע סדרה של השוואות אשר בסופן הפרמוטציה המתאימה למיון הקלט. נראה שקיימת סדרת קלט עבורה ידרשו ( Ω( log השוואות. π π = = { π π ( i) { π π ( i) < π ( > π ( j)} j)} לאחר השוואה אחת :A[i] A[j] הפרמוטציות לשתי קבוצות. קבוצת את נחלק π = { π π ( i) < π ( j), π ( l) < π ( k)} π π = { π π ( i) = { π π ( i) > π ( < π ( j), π ( l) j), π ( l) < π ( k)} > π ( k)} A[k] לאחר השוואה נוספת A[l] : הפרמוטציות לארבע קבוצות. קבוצת את נחלק π = { π π ( i) > π ( j), π ( l) > π ( k)} cs,techio k לאחר k השוואות יווצרו k קבוצות. נבחר קלט שקונסיסטנטי עם קבוצה זו מכילה לפחות /! k פרמוטציות. כאשר הקבוצה הגדולה הקבוצה הגדולה מבין הקבוצות. ביותר תהיה בגודל, התהליך הושלם.

Media/sort חסם תחתון למי ו ן ע"י השו וא ות (המשך ( 4! = π! > cs,techio e e log (!)!/ k קבוצה נוסחת ולכן: המכילה סטרלינג לפחות לעצרת: פרמוטציות לאחר בגודל תהיה השוואות. ( Θ(/ ) ) log(!) > log log log (!) > log e 9 log log log log 9 > > > נימוק מפורט לשורה הא ח רונ ה: מ.ש.ל מ.ש.ל log log log e e e log > e log

Media/sort נימו ק א לטר נטיבי ל ח סם בינרי. החלטות עץ ע"י לתיאור ניתן השוואות על המבוסס מיון אלגוריתם a :a > a :a a :a > > (,,) a :a (,,) a :a > > (,,) (,,) (,,) (,,) מצוינת פנימי צומת בכל מצוינת עלה בכל השוואה. פרמוטציה הקלט. את הממיינת.! השוואות). מתעלם זה מפעולות שאינן הוא העלים מספר ) ייצוג h > log (!) > log c h מספר ההשוואות העץ גובה הוא המקסימלי ומתקיים: cs,techio

Media/sort מיו ן BucketSort 6...k למיין בתחום שונים מספרים המשימה :.k נשתמש בוליאני A במערך באורך השיטה :. אפס את A.. בקלט לכל x בצע: = A[x]. המערך על עבור ואסוף: { i) for (i = ; i < k ; if (A[i] = = ) output i ; } הוא.,,, הוא = 6. k נניח דוגמא: = 4 וטווח המספרים שהקלט נניח 4 6 4 6.Θ(k).Θ(k),Θ(),Θ() המערך איפוס זמן: הקלט על מעבר איסוף סכ"ה cs,techio.θ() k = Θ() מקיים הטווח גודל אם נקבל אזי ליניארי מיון אלגוריתם

Media/sort היכ ן הק סם? 7 מדוע ההוכחה שנדרשים לפחות מהו בדיוק תנאי המשפט שמופר ( Ω( log השוואות אינה "תופסת". במיון.BucketSort log k השוואות בהוכחת המשפט כל השוואה נותנת תשובה בינרית: גדול או קטן. לעומת זאת, במיון BucketSort תוצאות "השוואה" אחת שוות ל- בינריות. כאשר גודל הטווח מקיים Θ() k = אזי אמנם נקבל אלגוריתם מיון ליניארי Θ() ואולם כל צעד מקביל ל- ( Θ(log השוואות בינריות. cs,techio

Media/sort הרחבת מיון BucketSort המשימה : למיין מספרים שאינם בהכרח שונים מהתחום k... השיטה : נשתמש במערך של k תורים. בזמן האיסוף נשרשר את התורים. 8.,,,,,, הוא = 6. k נניח דוגמא: = 7 וטווח המספרים הוא שהקלט נניח 4 6 הפלט שומר על סדר ההכנסה כאשר המפתחות שווים:,,,,,, הגדרה: שיטת מיון תקרא יציבה (Stable) כאשר מתקיים התנאי הבא: אם בקלט A[j] A[i] = וכן i, < j אזי A[i] יקדים את A[j] בפלט. BucketSort היא שיטת מיון יציבה. cs,techio

מיון RadixSort Media/sort אבחנה : שיטת BucketSort אינה יעילה כאשר המספרים לקוחים מתחום "רחב מדי" k.., כלומר ידרוש מערך גדול ובו 0 מקומות בעוד = כאשר. >> k לדוגמא מיון המספרים,,00 99999. (בדומה לבעיה שבגללה הצגנו את פונקציות הערבול). פתרון : נניח שכל מפתח מורכב מ- d ספרות עשרוניות. נמיין כל ספרה בנפרד תוך שימוש בשיטת מיון יציבה ) לדוגמא.(BucketSort ממוינות ראשונות (בניגוד אולי ספרות פחות משמעותיות (Least Sigificat Digits) LSD לאינטואיציה ראשונית). ממוין ממוין ממוין 9 9 47 67 89 46 70 70 46 47 67 9 89 70 9 46 89 47 67 9 46 47 67 70 89 cs,techio

Media/sort.(MSD) פר וצד ו ר ת RadixSort נס מ ן ב- את הספרה הפחות מ ש מ ע ותית (LSD) וב- d את הספרה המ שמ ע ות ית בי ותר 0 Radix-Sort(A,d) for i to d do use BucketSort to sort array A o digit i תרגיל: הוכחת נכונות באינדוקציה על d. היכן אתם משתמשים בעובדה ששיטת המיון בתוך הלולאה יציבה? היכן נכשלת ההוכחה כאשר ממיינים קודם את הספרות המשמעותיות ואח"כ את הספרות הפחות משמעותיות. דוגמא לכישלון המיון כאשר המיון נעשה בסדר שכזה: 9 47 67 89 46 70 9 47 46 67 70 89 9 70 46 89 47 67 70 46 47 67 9 89 cs,techio

Media/sort מכונת המיון של Hollerith cs,techio

Media/sort ניתו ח ז מן הר יצ ה.Θ() לכל ספרה עשרונית נבצע BucketSort בזמן.Θ(0) עבור d ספרות הזמן הכולל הוא Θ(d(0)). כלומר למספרים בבסיס 0 עם מספר ספרות d קבוע, המיון מתבצע בזמן עבור מספרים המיוצגים בבסיס, r לכל ספרה נבצע BucketSort בזמן.Θ(r) עבור d ספרות, הזמן הכולל הוא.Θ(d(r)) כאשר האיבר המקסימלי הוא, k מספר הספרות בבסיס r הוא log r k ואז הזמן הנדרש הוא k (r)). Θ(log r כלומר עבור k > ובסיס- r קבוע, הזמן הנדרש הוא ( Ω( log כפי שדרוש במיונים עם השוואות בלבד. cs,techio