1.和课本思路保持一致,先找到了根节点 因为是二叉搜索树 所以比根节点值小的是左子树,比根节点大的是右子树 判断完一轮后 将左子树放进去再进行判断! 右子树进行判断 ;当然考虑什么时候有左右子树; ...
分类:
其他好文 时间:
2019-08-21 21:38:56
阅读次数:
83
j今天刷的题是LeetCode第235题。题目要求是:给定一个二叉搜索树,找到该树中两个指定节点的最近公共祖先 即,对于有根树T的两个节点pq,最近公共祖先表示为一个节点x,满足pq是x的子节点且x的深度尽可能大 其中给定的二叉树,所有节点的值均不相同,并且pq为不同节点且在二叉树中 开始的时候,想 ...
分类:
其他好文 时间:
2019-08-20 22:32:55
阅读次数:
109
1.平衡二叉树基本介绍 1.1平衡二叉树又叫平衡二叉搜索树(Selg-balancing binary search tree),又叫AVL树,可以保证查询效率较高; 1.2 平衡二叉树是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是平衡二叉树。 1.3 平衡二叉树的常用实 ...
分类:
编程语言 时间:
2019-08-19 15:54:50
阅读次数:
99
给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。 输入格式: 输入包含若干组 ...
分类:
其他好文 时间:
2019-08-14 16:54:15
阅读次数:
63
题目: 输入一个整数数组,判断该数组是不是某二叉搜索树的后续遍历的结果。如果是则返回true,否则返回false 思路: 后序遍历的特点,最后一个数字为树的根节点的值,数组中前边的数字可以分为两部分,第一部分是左子树的值,都比根节点小,第二部分都是右子树的值,都比根节点大 代码: ...
分类:
其他好文 时间:
2019-08-10 21:00:08
阅读次数:
86
题目描述: 给定一个整数 n,生成所有由 1 ... n 为节点所组成的二叉搜索树。 输入: 3输出:[ [1,null,3,2], [3,2,null,1], [3,1,null,null,2], [2,1,3], [1,null,2,null,3]]解释:以上的输出对应以下 5 种不同结构的二叉 ...
分类:
其他好文 时间:
2019-08-10 17:38:27
阅读次数:
101
输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 方法一:非递归版 方法二递归版 方法三:改进递归版 方法四 中序遍历递归方法 ...
分类:
其他好文 时间:
2019-08-10 17:37:39
阅读次数:
73
二叉查找树(二叉搜索树): ——摘自《挑战》 输入若干条命令,执行以下操作: insert x——将x插入到二叉排序查找树中 delete x——从二叉排序查找树中删除x find x——从二叉排序查找树中查找x,找到则输出yes,否则输出no min——输出该二叉排序查找树的最小值 travers ...
分类:
其他好文 时间:
2019-08-10 13:34:20
阅读次数:
56
一、树结构本身是一种天然的组织结构 将数据使用树结构后,出奇的高效。 二、二叉树 和链表一样,动态数据结构 class Node{ E e; Node left; Node right; } 二叉树(多叉树) 二叉树具有唯一根节点 class Node{ E e; Node left; <-- 左孩 ...
分类:
其他好文 时间:
2019-08-09 23:25:25
阅读次数:
118