码迷,mamicode.com
首页 >  
搜索关键字:treenode    ( 1958个结果
LeetCode--Balanced Binary Tree
递归 1 /** 2 * Definition for binary tree 3 * struct TreeNode { 4 * int val; 5 * TreeNode *left; 6 * TreeNode *right; 7 * TreeNode...
分类:其他好文   时间:2014-09-04 22:16:00    阅读次数:228
[LeetCode] Symmetric
1: 递归public class Solution { public boolean isSymmetric(TreeNode root) { if(root == null) return true; return isTwoTreeSymmet...
分类:其他好文   时间:2014-09-04 01:32:37    阅读次数:194
二叉树深度、平衡、相等、求遍历
#include #include #include using namespace std;struct TreeNode { struct TreeNode* left; struct TreeNode* right; char elem; ...
分类:其他好文   时间:2014-09-03 00:08:45    阅读次数:285
《数据结构与算法分析》学习笔记(四)——树ADT
一、二叉树 1、定义 二叉树是一棵树,其中每个节点都不能多于2个儿子。 2、实现 typedef struct TreeNode *PtrToNode;typedef PtrToNode Tree;typedef char ElementType;struct TreeNode{ ElementTy...
分类:其他好文   时间:2014-09-01 13:49:03    阅读次数:157
Binary Tree Maximum Path Sum
这道题一眼看上去就是一个递归的算法,对于一棵树,分三种情况,包括根、仅左子树、仅右子树,递归的确认最大值,其中第一种情况(路径中包含根)分析可知它会一直包含根,后两中就复杂点,需要一直递归处理每颗子树。代码如下:int maxPathSumWithRoot(TreeNode *root) { if ...
分类:其他好文   时间:2014-08-30 21:43:10    阅读次数:307
(016)给定一个有序数组(递增),写程序构建一棵具有最小高度的二叉树(keep it up)
给定一个有序数组(递增),写程序构建一棵具有最小高度的二叉树。 由于数组是递增有序的,每次都在中间创建结点,类似二分查找的方法来间最小树。 struct TreeNode { int data; TreeNode* leftChild; TreeNode* rightChild; }; void newNode(TreeNode*& vNode, int vData) { vNode...
分类:其他好文   时间:2014-08-30 02:24:58    阅读次数:260
Path Sum
# Definition for a binary tree nodeclass TreeNode: def __init__(self, x): self.val = x self.left = None self.right = Noneclas...
分类:其他好文   时间:2014-08-29 17:36:18    阅读次数:135
LeetCode Recover Binary Search Tree
class Solution {private: vector nodes;public: void recoverTree(TreeNode *root) { nodes.clear(); dfs(root); // 1 5 3 4 2 6 7...
分类:其他好文   时间:2014-08-25 01:07:23    阅读次数:329
Leetcode - Binary Tree Maximum Path Sum
解题的关键在于这条路径只能是先往上走,到达某个最高点,再往下走,换句话说,只能有一次转折的机会。所以递归这棵树,记录以某个子节点为转折点时的最大值。值得注意的是树节点的值有负值,所以如果某个子路径的和小于0,放弃它(设置和为0)。 class Solution { public: int maxPathSum(TreeNode *root) { int maxSum = -1 <...
分类:其他好文   时间:2014-08-23 10:01:00    阅读次数:167
判断T2是否是T1的子树
基本模仿CC150上的思路,递归地在t1中寻找能与t2的根相同的节点,作为开始比较的开始点,然后递归的比较两个树是否相等。boolean containsTree(TreeNode t1, TreeNode t2){ if(t2==null) return true; ...
分类:其他好文   时间:2014-08-22 22:32:39    阅读次数:457
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!