Mid
From PDF
Coding
C# Coding Interview
Flatten a binary tree into a linked list (preorder traversal)?
TreeNode prev = null;
void Flatten(TreeNode root) {
if (root == null) return;
Flatten(root.right);
Flatten(root.left);
root.right = prev;
root.left = null;
prev = root;
}
Explanation:
Postorder traversal (right-left-root) to flatten tree in place.
Share this Q&A
Share preview image: https://www.toolliyo.com/images/toolliyo-logo.png