帮忙看下铁路边的房子# Living
q*m
1 楼
请问我这个按层打印的code有什么问题,leetcode说我memory limit exceeded,另外
,除了memory,还有什么bug么?
class Solution {
public:
vector > levelOrder(TreeNode *root) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
vector > results;
if(!root) return results;
queue myQ;
myQ.push(root);
TreeNode* dummy = NULL;
myQ.push(dummy);
vector newLevel;
while(!myQ.empty()) {
TreeNode* temp = myQ.front();
if(temp != dummy) {
newLevel.push_back(temp->val);
if( temp->left != NULL ) {
myQ.push(temp->left);
}
if( temp->right != NULL ) {
myQ.push(temp->right);
}
} else {
myQ.push(dummy);
results.push_back(newLevel);
newLevel.clear();
}
myQ.pop();
}
return results;
}
};
,除了memory,还有什么bug么?
class Solution {
public:
vector
// Start typing your C/C++ solution below
// DO NOT write int main() function
vector
if(!root) return results;
queue
myQ.push(root);
TreeNode* dummy = NULL;
myQ.push(dummy);
vector
while(!myQ.empty()) {
TreeNode* temp = myQ.front();
if(temp != dummy) {
newLevel.push_back(temp->val);
if( temp->left != NULL ) {
myQ.push(temp->left);
}
if( temp->right != NULL ) {
myQ.push(temp->right);
}
} else {
myQ.push(dummy);
results.push_back(newLevel);
newLevel.clear();
}
myQ.pop();
}
return results;
}
};