[Tree]樹與中序遍歷

對一棵二叉樹進行中序遍歷得到a0 a1...an...

當遍歷樹時,如果處理當前節點時需要其中序遍歷序列中前一個節點的信息,即訪問an時需要an-1那麼可以用下面的框架進行中序遍歷。

void fun(TreeNode *root, TreeNode* &prev)
{
	if(root == NULL) return;
	fun(root->left, prev);
	//訪問當前節點並處理
	prev = root;
	fun(root->right, prev);
}

或者

TreeNode  *fun(TreeNode *root, TreeNode *prev)
{
	if(root == NULL) return prev;
	prev = fun(root->left, prev);
	//訪問當前節點並處理
	return fun(root->right, prev);
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章