Given a Binary Tree and a key, write a function that prints all the ancestors of the key in the given binary tree.
For example, if the given tree is following Binary Tree and key is 7, then your function should print 4, 2 and 1.
1 / \ 2 3 / \ 4 5 / 7
boolean
printAncestors(Node node,
int
target)
{
/* base cases */
if
(node ==
null
)
return
false
;
if
(node.data == target)
return
true
;
/* If target is present in either left or right subtree
of this node, then print this node */
if
(printAncestors(node.left, target)
|| printAncestors(node.right, target))
{
System.out.print(node.data +
" "
);
return
true
;
}
/* Else return false */
return
false
;
}
No comments:
Post a Comment