Print all ancestors of a given node in a binary tree?
bool PrintAncestors(TreeNode root, int target) {
if (root == null) return false;
if (root.val == target) return true;
if (PrintAncestors(root.left, target) ||
PrintAncestors(root.right, target)) {
Console.Write(root.val + " ");
return true;
return false;
Explanation:
Recursive check if target is in subtree; print current node on path back if yes.