二叉树的下一个节点
来源:互联网 发布:php判断域名是否拦截 编辑:程序博客网 时间:2024/05/19 10:36
题目描述:
给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。
答案:
# -*- coding:utf-8 -*-# class TreeLinkNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = None# self.next = None# self.next是指向父结点class Solution: def GetNext(self, pNode): # write code here # 1、结点为空时,返回空值 if not pNode: return pNode # 2、结点有右孩子存在,则设置一个指针从右孩子出发,一直 # 沿着左子结点的方向的叶子节点即为下一个结点 if pNode.right: leftNode=pNode.right while leftNode.left: leftNode=leftNode.left return leftNode # 3、结点不是根节点,如果该节点是其父结点的左孩子,则返回父结点 # 否则继续向上遍历其父结点的父结点,重复之前的判断,返回父结点。 p=pNode while p.next: tmp=p.next if tmp.left==p: return tmp p=tmp
阅读全文
0 0
- 二叉树的下一个节点
- 二叉树的下一个节点
- 二叉树的下一个节点
- 二叉树的下一个节点
- 二叉树的下一个节点
- 二叉树的下一个节点
- 二叉树的下一个节点
- 二叉树的下一个节点
- 二叉树的下一个节点
- 二叉树的下一个节点
- 二叉树的下一个节点
- 二叉树的下一个节点
- 找二叉树节点的下一个节点
- 【二叉树】二叉树的下一个节点
- 剑指Offer--二叉树的下一个节点
- 二叉树的下一个节点(中序)
- 求二叉树的下一个节点
- Python:二叉树的下一个节点
- 2017最新App Store上架流程(超详细)
- 输出Freemarker模板
- iOS Button 设置AttributeString 在不同状态下自适应尺寸心得
- com.microsoft.sqlserver.jdbc.SQLServerException: 用户 'root1' 登录失败。
- 在Word2013中制作“福”到贴画
- 二叉树的下一个节点
- Scala数组
- 【深度学习】深度学习之道:如何选择深度学习算法架构
- 【论文阅读】A Neural Probabilistic Language Model
- 最近碰到了关于vue-router传值的问题
- Adb采集数据说明书
- php报错 syntax error: unexpected end of file
- [paper]Efficient Deep Learning for Stereo Matching(未完成)
- vue的解构