package top100liked // https://leetcode.cn/problems/flatten-binary-tree-to-linked-list/description/?envType=study-plan-v2&envId=top-100-liked type TreeNode struct { Val int Left *TreeNode Right *TreeNode } func flatten(root *TreeNode) { var prev *TreeNode var helper func(*TreeNode) helper = func(node *TreeNode) { if node == nil { return } helper(node.Right) helper(node.Left) node.Right = prev node.Left = nil prev = node } helper(root) }