Trees and BST in C#
Tree node
public class TreeNode {
public int val;
public TreeNode left;
public TreeNode right;
public TreeNode(int val = 0, TreeNode left = null, TreeNode right = null) {
this.val = val;
this.left = left;
this.right = right;
}
}Problems to practice
- Inorder traversal
- Preorder traversal
- Postorder traversal
- Level order traversal
- Maximum depth
- Diameter of tree
- Lowest common ancestor
- Validate BST
- Path sum
Example: inorder traversal
public void Inorder(TreeNode root) {
if (root == null) return;
Inorder(root.left);
Console.Write(root.val + " ");
Inorder(root.right);
}Can you explain it without the notes?
Trees and BST in C#
Use your own words. Explain an example and one limitation before checking the explanation.
Check your explanation
Tree node
Turn this concept into a clear answer.
Practice this conceptAdapted from 17_DSA_DOTNET.md · “7. Trees and BST in C#”. Examples are study fragments; framework behavior can depend on your version.