שאלה 6מבני נתונים2020 מועד מיוחד (אוגוסט)עצים בינארייםסה״כ 20 נק׳
בדיקת איזון שאריות בעץ בינארי
שים לב
בכל שאלה שנדרש בה מימוש, תוכל להשתמש בפעולות של המחלקות: תור, מחסנית, עץ בינרי וחוליה, בלי לממש אותן. אם תשתמש בפעולות נוספות, יהיה עליך לממש אותן.
עץ בינרי מטיפוס שלם של מספרים שאינם שליליים הוא "עץ שאריות שוויוני" במקרה הזה:
כמות האיברים שמספריהם מתחלקים ב־3 עם שארית 1 שווה לכמות האיברים שמספריהם מתחלקים ב־3 עם שארית 2, ושווה לכמות האיברים שמספריהם מתחלקים ב־3 ללא שארית.
✎ דוגמה של עץ שאריות שוויוניעץ בינרי מטיפוס שלם של מספרים שאינם שליליים הוא "עץ שאריות שוויוני" במקרה הזה:
כמות האיברים שמספריהם מתחלקים ב־3 עם שארית 1 שווה לכמות האיברים שמספריהם מתחלקים ב־3 עם שארית 2, ושווה לכמות האיברים שמספריהם מתחלקים ב־3 ללא שארית.
עץ בינרי זה הוא עץ שאריות שוויוניעץ בינרי מטיפוס שלם של מספרים שאינם שליליים הוא "עץ שאריות שוויוני" במקרה הזה:
כמות האיברים שמספריהם מתחלקים ב־3 עם שארית 1 שווה לכמות האיברים שמספריהם מתחלקים ב־3 עם שארית 2, ושווה לכמות האיברים שמספריהם מתחלקים ב־3 ללא שארית. משום שיש בו שני מספרים שמתחלקים ב־3 ללא שארית (9, 9), שני מספרים שמתחלקים ב־3 עם שארית 1 (7, 10) ושני מספרים שמתחלקים ב־3 עם שארית 2 (5, 11).
כתוב פעולה חיצונית בוליאנית בשם treeEqual המקבלת עץ בינרי מטיפוס שלם, לא ריק, של מספרים שאינם שליליים ובודקת אם הוא עץ שאריות שוויוניעץ בינרי מטיפוס שלם של מספרים שאינם שליליים הוא "עץ שאריות שוויוני" במקרה הזה:
כמות האיברים שמספריהם מתחלקים ב־3 עם שארית 1 שווה לכמות האיברים שמספריהם מתחלקים ב־3 עם שארית 2, ושווה לכמות האיברים שמספריהם מתחלקים ב־3 ללא שארית..
אם כן — תחזיר הפעולה true, אחרת היא תחזיר false.
משימות
אמשימה א
מימוש100%
שפת התכנות שלי
שאלה 6מבני נתונים2020 מועד מיוחד (אוגוסט)עצים בינארייםסה״כ 20 נק׳
בדיקת איזון שאריות בעץ בינארי
שים לב
בכל שאלה שנדרש בה מימוש, תוכל להשתמש בפעולות של המחלקות: תור, מחסנית, עץ בינרי וחוליה, בלי לממש אותן. אם תשתמש בפעולות נוספות, יהיה עליך לממש אותן.
עץ בינרי מטיפוס שלם של מספרים שאינם שליליים הוא "עץ שאריות שוויוני" במקרה הזה:
כמות האיברים שמספריהם מתחלקים ב־3 עם שארית 1 שווה לכמות האיברים שמספריהם מתחלקים ב־3 עם שארית 2, ושווה לכמות האיברים שמספריהם מתחלקים ב־3 ללא שארית.
✎ דוגמה של עץ שאריות שוויוניעץ בינרי מטיפוס שלם של מספרים שאינם שליליים הוא "עץ שאריות שוויוני" במקרה הזה:
כמות האיברים שמספריהם מתחלקים ב־3 עם שארית 1 שווה לכמות האיברים שמספריהם מתחלקים ב־3 עם שארית 2, ושווה לכמות האיברים שמספריהם מתחלקים ב־3 ללא שארית.
עץ בינרי זה הוא עץ שאריות שוויוניעץ בינרי מטיפוס שלם של מספרים שאינם שליליים הוא "עץ שאריות שוויוני" במקרה הזה:
כמות האיברים שמספריהם מתחלקים ב־3 עם שארית 1 שווה לכמות האיברים שמספריהם מתחלקים ב־3 עם שארית 2, ושווה לכמות האיברים שמספריהם מתחלקים ב־3 ללא שארית. משום שיש בו שני מספרים שמתחלקים ב־3 ללא שארית (9, 9), שני מספרים שמתחלקים ב־3 עם שארית 1 (7, 10) ושני מספרים שמתחלקים ב־3 עם שארית 2 (5, 11).
כתוב פעולה חיצונית בוליאנית בשם treeEqual המקבלת עץ בינרי מטיפוס שלם, לא ריק, של מספרים שאינם שליליים ובודקת אם הוא עץ שאריות שוויוניעץ בינרי מטיפוס שלם של מספרים שאינם שליליים הוא "עץ שאריות שוויוני" במקרה הזה:
כמות האיברים שמספריהם מתחלקים ב־3 עם שארית 1 שווה לכמות האיברים שמספריהם מתחלקים ב־3 עם שארית 2, ושווה לכמות האיברים שמספריהם מתחלקים ב־3 ללא שארית..