求助丨为什么平台执行又双叒和本地不一样
1094
2024.05.11
2024.05.11
发布于 山东

image.png
114.二叉树展开为链表,就是跑图上这个样例,本地没问题,平台报错??
image.png

代码如下,思路是正着先序遍历会丢失节点信息,所以倒着后序遍历:

class Solution {
public:
    void flatten(TreeNode* root) {
        TreeNode*last=nullptr; //用last表示上一个节点
        function<void(TreeNode*)> dfs=[&](TreeNode* node){
            if(!node)return;
            dfs(node->right); //右
            dfs(node->left); //左
            node->right=last; //根
            last=node;//如果注释掉这一行就不报错
        };
        dfs(root);
    }
};
评论 (11)