数据结构高手进来

zjfa_mickey 2009-09-03 04:02:30
设二叉树采用链表表示,各结点结构为leftchild data rightchild,编写算法输出二叉树前序遍历中的前k个结点值(k<n)。

这题怎么做啊?
...全文
59 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjfa_mickey 2009-09-06
  • 打赏
  • 举报
回复
自己顶顶
Johnny_de 2009-09-03
  • 打赏
  • 举报
回复
pseudo code

//
stack stNode[k];
queue qeNode[k];

void PreTraverse(BinaryTree* root, int k)
{
if (!root)
return;

stNode.Push(root);
int nCount = 0;
BinaryTree* pTemp = NULL;

while (!stNode.empty() && nCount != k)
{
pTemp = stNode.Top();
nCount++;
stNode.Pop();
qeNode.enqueue(pTemp->data);
if (pTemp->right != NULL)
{
stNode.Push(pTemp->right);
}
if (pTemp->left != NULL)
{
stNode.Push(pTemp->left);
}
}
}

// Finally u get the result by dequeue all elements from the queue by sequence

33,028

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧