CharlesWang 2017-11-29
在二叉查找树中:
(01) 若任意节点的左子树不空,则左子树上所有结点的值均小于它的根结点的值;
(02) 任意节点的右子树不空,则右子树上所有结点的值均大于它的根结点的值;
(03) 任意节点的左、右子树也分别为二叉查找树。
(04) 没有键值相等的节点(no duplicate nodes)。
节点的前驱:是该节点的左子树中的最大节点。
节点的后继:是该节点的右子树中的最小节点。
什么是树的度
一棵树中 最大节点的度,即哪个节点的子节点最多,它的度就是 树的度。
什么节点的层次
从根节点开始算起,根节点算第一层,往后底层。比如上图中,3 的层次是 2,4 的层次是 4。
树的高度是从叶子节点开始,自底向上增加。
与高度相反,树的深度从根节点开始,自顶向下增加。
问题1解决方案:遍历表达法有3种方法:先序遍历、中序遍历、后序遍历
问题2:满二叉树和完全二叉树 有些不太清楚
满二叉树一定是完全二叉树,完全二叉树不一定是满二叉树。
/* * 查找最大结点:返回tree为根结点的二叉树的最大结点。 */ private BSTNode<T> maximum(BSTNode<T> tree) { if (tree == null) return null; while(tree.right != null) tree = tree.right; return tree; } public T maximum() { BSTNode<T> p = maximum(mRoot); if (p != null) return p.key; return null; }
/* * 查找最小结点:返回tree为根结点的二叉树的最小结点。 */ private BSTNode<T> minimum(BSTNode<T> tree) { if (tree == null) return null; while(tree.left != null) tree = tree.left; return tree; } public T minimum() { BSTNode<T> p = minimum(mRoot); if (p != null) return p.key; return null; }
(statistics.sh脚本的运行结果截图)
A queue is the ideal collection to use when ____________________ . A . implementing a line in a simulation B . evaluating a postfix expression C . evaluating an infix expression D . implementing a quick sort E . none of the above 正确答案: A 你的答案: C A queue is ideal for implementing a line in a simulation, such as a first-come, first-served situation.
In a array-based implementation of a queue that stores the front of the queue at index 0 in the array, the dequeue operation is ___________________. A . impossible to implement B . has several special cases C . O(n) D . O(n2) E . none of the above 正确答案: C 你的答案: A 查看知识点 | 收起解析 It requires a linear amount of time to shift all elements of the queue down an index after a remove is applied.
20162326刘诚昊同学
计划学习时间:15小时
实际学习时间:16小时
改进情况:
《Java程序设计与数据结构教程(第二版)》
《Java程序设计与数据结构教程(第二版)》学习指导