use std::rc::Rc;
use std::cell::RefCell;
impl Solution {
pub fn invert_tree(root: Option<Rc<RefCell<TreeNode>>>) -> Option<Rc<RefCell<TreeNode>>> {
root.map(|node| {
{
let mut node_ref = node.borrow_mut();
let left = node_ref.left.take();
let right = node_ref.right.take();
node_ref.right = Solution::invert_tree(left);
node_ref.left = Solution::invert_tree(right);
}
node
})
}
}