多叉树的递归和非递归遍历

转载 2013年12月05日 18:51:00

转载地址:http://blog.csdn.net/magic_feng/article/details/6618206

1、递归方法

void travel(Node *pNode)
{
	if (pNode == Null)
	{
		return;
	}
	
	Deal(pNode);
	
	for (int i=0 ;i<pNode->child_list.size(); i++)
	{
		Node *tmp = pNode->child_list[i];
		travel(tmp);
	}
}
2、非递归方法
void travel(Node *pNode)
{
  stack stack;
  stack.push(pNode);
  Node *lpNode;

  while(!stack.empty())
  {
      lpNode = stack.top();
      stack.pop();

      Deal(lpNode);
      
      for (int i=0 ;i<pNode->child_list.size(); i++)
      {
		stack.push(pNode->child_lis[i]);
      }
  }
}


相关文章推荐

多叉树的递归和非递归遍历

1、递归方法 [cpp] view plain copy void travel(Node *pNode)   {       if (pNode == Null)      ...

java非递归实现Xml的遍历(多叉树遍历)

XML遍历(非递归)

多叉树的后序非递归遍历

  • 2015年01月08日 18:33
  • 3KB
  • 下载

二叉树的非递归遍历

  • 2014年11月04日 12:39
  • 3KB
  • 下载

数据结构/实现二叉树的前序/中序/后序非递归遍历

//先序遍历--非递归版本 //1.取当前结点--访问结点--出栈 //2.保存右子树 //3.保存左子树 void PreOrder_Nor() { ...

二叉树的非递归遍历

  • 2012年10月20日 18:08
  • 344KB
  • 下载

二叉树非递归遍历

  • 2013年03月09日 13:50
  • 38KB
  • 下载

数据结构六:二叉树的先序建树与中序的非递归遍历算法

熟悉二叉树的遍历建树过程有利于对后文线索化二叉树的学习          对于数据结构中二叉树特殊的结构,经过一段时间的温习发现自己基础并不是很牢靠,所以写下这篇博文也是记录一下自己的学习过程,给日...
  • szqsdq
  • szqsdq
  • 2015年08月20日 14:40
  • 674

二叉树非递归遍历

  • 2013年01月13日 16:21
  • 3KB
  • 下载

二叉树的非递归遍历 C++

  • 2011年12月08日 20:42
  • 4KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:多叉树的递归和非递归遍历
举报原因:
原因补充:

(最多只允许输入30个字)