Binary Tree Preorder Traversal!参考【python实现二叉树】用递归写了下面的代码[javascript]var result = [];var preorderTraversal = function(root) { if(root){
result.push(root.val);
preorderTraversal(root.left);
preorderTraversal(root.right);
} return result;
};
[python]class Solution(object):
result = []
def preorderTraversal(self, root): if root:
self.result.append(root.val)
self.preorderTraversal(root.left)
self.preorderTraversal(root.right)
# print "self.result=", self.result return self.result
[cpp]class Solution {public:
vector<int>res;
vector<int> preorderTraversal(TreeNode *root) { if(root == NULL) return res;
res.push_back(root->val);
res = preorderTraversal(root->left);
res = preorderTraversal(root->right); return res;
}
};用 python 刷题时,出现错误,但改写成 cpp 后,就通过了...其实,想问的是:python 与 javascrip 错了?错哪了?
1 回答
qq_遁去的一_1
TA贡献1725条经验 获得超7个赞
Python, leetcode检测一个答案是通过多个测试用例进行测试的, 因此不能把result做成类变量,要把它变成实例变量
class Solution(object): def __init__(self): self.result = [] def preorderTraversal(self, root): if root: self.result.append(root.val) self.preorderTraversal(root.left) self.preorderTraversal(root.right) return self.result
添加回答
举报
0/150
提交
取消