摘要: 问题:给定一棵二叉树(非二叉检索树),求二叉树中距离最远的两个叶子节点间的距离?其中两个叶子间的距离定义为:F(X,Y) = 从节点X到根节点路径上所有节点数据之和 +从节点Y到根节点路径上所有节点数据之和 - 从X和Y的第一个祖先节点到根节点路径上所有节点数据之和。该题的主要思路:1.求出二叉树的所有叶子节点。2.求任意两个叶子节点的第一个祖先节点。3.计算具有祖先-子孙关系的两个节点之间的路径,并计算路径上节点数据之和。#include <iostream>#include <vector>using namespace std;struct Node{ Node( 阅读全文
posted @ 2011-06-17 17:17 摇风清影 阅读(5742) 评论(0) 推荐(1) 编辑