public static Node DeleteLeafs(Node node) { if(node == null || node.IsLeafNode()) return null; node.left = DeleteLeafs(node.left); node.right = DeleteLeafs(node.right); return node; }
public static void ListAllPaths(Node parent, string str) { if(parent == null) return; str += parent.data; if (parent.IsLeafNode()) { Console.WriteLine(str); return; } str += "-->"; ListAllPaths(parent.left, str); ListAllPaths(parent.right, str); }