2018 2019 20172329 《Java软件结构与数据结构》第七周学习总结 教材学习内容总结 《Java软件结构与数据结构》第十一章 二叉查找树 一、概述 1、什么是二叉查找树:二叉查找树是一种带有附加属性的二叉树,即对树中的每个结点,其左孩子都要小于其父结点,而父结点又小于或等于其右孩子。 ...
分类:
编程语言 时间:
2018-11-02 23:34:49
阅读次数:
200
3810 -- 【模拟试题】圣主的考验 3810 -- 【模拟试题】圣主的考验 Description 若对于二叉树 T 的每个节点 v,其左子树的高度L和右子树的高度R均满足|L–R|≤1,则这个树T有可能来自超自然之界。规定若某节点子树为空,则该子树的高度是0。你的任务是求有N个节点的可能来自超 ...
分类:
其他好文 时间:
2018-11-02 00:23:16
阅读次数:
164
题目描述 现在有一棵合法的二叉树,树的节点都是用数字表示,现在给定这棵树上所有的父子关系,求这棵树的高度 输入描述: 输入的第一行表示节点的个数n(1 ≤ n ≤ 1000,节点的编号为0到n 1)组成, 下面是n 1行,每行有两个整数,第一个数表示父节点的编号,第二个数表示子节点的编号 输出描述: ...
分类:
其他好文 时间:
2018-10-28 14:59:14
阅读次数:
136
20172317 2018 2019 1 《程序设计与数据结构》第6周学习总结 教材学习内容总结 树: 一种非线性结构,其中元素被组织成一个层次结构;树由一个包含结点和边的集构成 元素存储于结点中,边将结点之间互相连接起来 根: 位于该树顶层的唯一结点;一棵树只能有一个根结点 位于树中较低层的结点是 ...
分类:
其他好文 时间:
2018-10-25 23:14:45
阅读次数:
206
20172330 2018 2019 1 《程序设计与数据结构》第六周学习总结 教材学习内容总结 树 1、树是非线性结构,其元素组织为一个层次结构 2、树的度表示树中的任意结点的最大子结点数 3、有m个元素的平衡n叉树的高度是lognm 4、树的遍历有4种方法 5、进行层序遍历时可采用队列来储存树中 ...
分类:
其他好文 时间:
2018-10-25 23:13:13
阅读次数:
187
数据结构分类中有一种很常见的结构,那就是树,树的分类很多种,包括二叉树、二叉搜索树、红黑树、B+树等等,但大多数都是基于二叉树的衍生结构,所以今天来学习下二叉树。 [toc] 什么是二叉树 定义:二叉树是每个结点最多有两个子树的树结构。通常子树被称作 “左子树”(left subtree)和 “右子 ...
分类:
其他好文 时间:
2018-10-24 22:19:26
阅读次数:
493
遍历二叉树的递归方法使用了函数栈,非递归方法使用了申请的栈, 两者的额外空间都与树的高度有关,所以空间复杂度为O(h),h为二叉树的高度。 可以使用二叉树叶子节点中大量指向null的指针实现空间复杂度O(1)的遍历。 Morris遍历的实质就是避免使用栈结构,让下层到上层有指针, 具体是通过让底层节 ...
分类:
其他好文 时间:
2018-10-19 02:23:00
阅读次数:
184
#include #include using namespace std; string s1, s2; class Tree { public: char c; Tree *left; Tree *right; }; Tree* create() { Tree *p = new Tree; p-... ...
分类:
其他好文 时间:
2018-10-18 14:04:05
阅读次数:
153
将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。 示例: 给定有序数组: [-10,-3,0,5,9], 一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉 ...
分类:
编程语言 时间:
2018-10-16 01:49:58
阅读次数:
181