Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function Node(val) {
- this.val = val;
- this.left = null;
- this.right = null;
- }
- function commonParent(root, val1, val2) {
- if (root == null) return null;
- if (root.val == val1 || root.val == val2) return root;
- let left = commonParent(root.left, val1, val2);
- let right = commonParent(root.right, val1, val2);
- if (left != null && right != null) return root;
- else if (left == null) return right;
- else return left;
- }
- function createNode(val) {
- return new Node(val);
- }
- let n2 = createNode(2);
- let n4 = createNode(4);
- let n5 = createNode(5);
- let n8 = createNode(8);
- let n9 = createNode(9);
- let n10 = createNode(10);
- let n11 = createNode(11);
- n2.left = n4;
- n2.right = n5;
- n4.left = n8;
- n4.right = n9;
- n5.left = n10;
- n5.right = n11;
- const commonNode = commonParent(n2, 8, 11);
- console.log(commonNode && commonNode.val);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement