二叉搜索树-宽度优先函数调用
我有 void leveltraversal(ostream& out);
的算法 但我不知道如何在 main () 中调用它。在我的作业中,我们不允许更改头文件。有没有办法在不重载的情况下调用它?
更新:
void BST::levelTraversal(ostream& out){
queue<BST::BinNode*> q;
BinNode* cur = myRoot;
BinNode* top = NULL;
q.push(cur);
while(q.empty() != false){
top = q.front();
if(top->left != NULL){
q.push(top->left);
}
if(top->right !=NULL){
q.push(top->right);
}
out<<top->data;
q.pop();
}
}
I have the algorithm for void leveltraversal(ostream& out);
but i am not sure how to call it in main () . In my Assignment we are not allowed to change the header file. Is there a way to call it without overloading it?
Update:
void BST::levelTraversal(ostream& out){
queue<BST::BinNode*> q;
BinNode* cur = myRoot;
BinNode* top = NULL;
q.push(cur);
while(q.empty() != false){
top = q.front();
if(top->left != NULL){
q.push(top->left);
}
if(top->right !=NULL){
q.push(top->right);
}
out<<top->data;
q.pop();
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
参数
ostream&
采用任何输出流,例如输出文件。以下示例使用标准输出作为ostream
:The parameter,
ostream&
, takes any output stream, e.g. output file. The following example uses the standard output as anostream
:如果您无法更改函数头,则可以定义全局变量并在两个函数(
main
和leveltraversal
)中引用它们。If you can't change the function header, you can define global variables and reference them in both functions (
main
andleveltraversal
).这就是我所拥有的
this is what i have