תיאור השאלה
Given the root of a binary tree, check whether it is a mirror of itself (symmetric around its center).
איך פותרים?
עץ סימטרי אם תת־העץ השמאלי הוא תמונת מראה של הימני. בודקים ברקורסיה שני צמתים: הערכים שווים, הבן השמאלי של האחד משתקף בבן הימני של השני, והבן הימני של האחד בבן השמאלי של השני. סיבוכיות: O(n).
פתרון קוד
JavaScript
Python
function isSymmetric(root) {
function mirror(a, b) {
if (!a && !b) return true;
if (!a || !b || a.val !== b.val) return false;
return mirror(a.left, b.right) && mirror(a.right, b.left);
}
return mirror(root?.left ?? null, root?.right ?? null);
}
לעבור את ראיון העבודה הבא שלך בהצלחה
קורס דיגיטלי מקיף עם +25 שיעורים מעשיים, כשעתיים של וידאו, וליווי של מראיין בכיר.