7 תשובות
היא עושה sort לתור
בסדר עולה
שואל השאלה:
תודה רבה! יש מצב להסבר יותר מפורט של איך היא עושה את זה?
תודה רבה! יש מצב להסבר יותר מפורט של איך היא עושה את זה?
קודם כל, היא פועלת רקורסיבית
היא לוקחת את האיבר הראשון של תור שהיא מקבלת, ושמה את כל האיברים הקטנים מהאיבר הראשון או שווים לו(לא כולל האיבר הראשון) בתור אחד, ואת כל האיברים הגדולים מהאיבר הראשון בתור שני. היא מפעילה רקורסיבית את הפעולה על התור של האיברים הקטנים והתור של האיברים הגדולים, ואחרי זה היא שמה את התור הראשון בתור שהיא קיבלה כפרמטר, אחריו את האיבר הראשון שהיא בחרה, ואחריו את התור השני
היא לוקחת את האיבר הראשון של תור שהיא מקבלת, ושמה את כל האיברים הקטנים מהאיבר הראשון או שווים לו(לא כולל האיבר הראשון) בתור אחד, ואת כל האיברים הגדולים מהאיבר הראשון בתור שני. היא מפעילה רקורסיבית את הפעולה על התור של האיברים הקטנים והתור של האיברים הגדולים, ואחרי זה היא שמה את התור הראשון בתור שהיא קיבלה כפרמטר, אחריו את האיבר הראשון שהיא בחרה, ואחריו את התור השני
שואל השאלה:
תודה רבה ממש עזרת לי
תודה רבה ממש עזרת לי
q2.insert(q1.remove());
השורה הזאת מכניסה לq2 את הערך ש.... מה? זה רק בc#?
השורה הזאת מכניסה לq2 את הערך ש.... מה? זה רק בc#?
אנונימי
^קודם מתבצעת הפעולה של q1.remove
היא מוציאה מq1 את האיבר הראשון ומחזירה אותו
ואז insert מכניסה את האיבר הראשון הזה לq2
היא מוציאה מq1 את האיבר הראשון ומחזירה אותו
ואז insert מכניסה את האיבר הראשון הזה לq2
באותו הנושא: