简介
中序遍历(LDR)是二叉树遍历的一种,也叫做中根遍历、中序环游。
定义
在二叉树中,中序遍历首先遍历左子树,而后拜访根结点,最初遍历右子树。若二叉树为空则完结返回,否则:(1)中序遍历左子树(2)拜访根结点(3)中序遍历右子树
如图所示二叉树,中序遍历后果:DBEAFC
Golang实现
func (root *TreeNode) inorder()[]int{ res:=[]int{} if root==nil{ return res } stack:=[]*TreeNode{} for root!=nil || len(stack)!=0{ if root!=nil{ stack=append(stack,root) root=root.Lchild }else{ root=stack[len(stack)-1] res=append(res,root.data) stack=stack[:len(stack)-1] root=root.Rchild } } return res}