美文网首页
257.binary-tree-paths

257.binary-tree-paths

作者: Optimization | 来源:发表于2020-06-02 11:07 被阅读0次
问题:

1.不要用考试的心态对待。
2.看的时候准备好几个优质答案,减少搜索难度。目前有4个优秀答案可供选择。
3.仔细分析问题。

正文:
class Solution {
public:
    vector<string> binaryTreePaths(TreeNode* root) {
        vector<string> ans;
        string s;
        
        // l: len
        // s.size(): 字符串的长度
        // 
        function<void(TreeNode*, int)> preorder =[&](TreeNode* node, int l){
            if(!node) return;
            s += (l > 0 ? "->": "") + to_string(node->val);
            if(!node->left && !node->right){
                ans.push_back(s);
            }
            preorder(node->left, s.size());
            preorder(node->right, s.size());
            // 清空s到只有根节点的值
            while (s.size() != 1) s.pop_back();
        };

        preorder(root, 0);
        return ans;
    }
};

相关文章

  • 257.binary-tree-paths

    问题: 1.不要用考试的心态对待。2.看的时候准备好几个优质答案,减少搜索难度。目前有4个优秀答案可供选择。3.仔...

网友评论

      本文标题:257.binary-tree-paths

      本文链接:https://www.haomeiwen.com/subject/bgzyzhtx.html