标签:void style 补充 它的 提交 ble 图片 enc 数据结构
本周在上周学习了二叉树的基础上,学习了一种二叉树的特殊形式——二叉查找树,又叫有序二叉树、排序二叉树。本章学习了两种二叉查找树的实现方法,以及两种二叉查找树的应用。
addElement
:向树中添加一个元素removeElement
:从树中删除一个元素removeAllOccurrences
:从树中删除所指定元素的任何存在removeMin
:删除树中的最小元素removeMax
:删除树中的最大元素findMin
:返回树中的最小元素的引用findMax
:返回树中的最大元素引用public void find(T element)
{
T result = null;
BinaryTreeNode node = root;
while (node != null)
{
if (element.CompareTo(node.getElement) > 0)
{
node = node.right;
}
else if (element.CompareTo(node.getElement) < 0)
{
node = node.left;
}
else
{
result = node.getElement;
break;
}
}
return result;
}
public void find(T element)
{
return find(root, element);
}
private void find(BinaryTreeNode root, T element)
{
if (root == null) {
return element;
}
int comparable = element.CompareTo(root.getElement);
if (comparable > 0){
find(root.right,element);
}
else if (comparable < 0){
find(root.left,element);
}
else {
return root.getElement;
}
}
null
,插入结点将会成为新的左孩子。null
,则会继续对左子树进行遍历,遍历的同时进行比较操作。null
,插入结点将会成为新的右孩子。null
,则会继续对右子树进行遍历,遍历的同时进行比较操作。null
即可。ArrayList
另一种是LinkedList
。后来发现是自己看错题了没有看到“索引”两个字,原话在书上120页。问题:本周代码的备注不是很多。
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 10/10 | 1/1 | 10/10 | |
第二周 | 246/366 | 2/3 | 20/30 | |
第三周 | 567/903 | 1/4 | 10/40 | |
第四周 | 2346/3294 | 2/6 | 20/60 | |
第五周 | 1343/4637 | 2/8 | 30/90 | |
第六周 | 1343/4637 | 2/8 | 30/90 | |
第七周 | 1343/4637 | 2/8 | 30/90 |
计划学习时间:20小时
实际学习时间:30小时
改进情况:本周的大部分时间基本都花在了对于查找算法和排序算法的理解上了,感觉对时间复杂度理解和计算的应用变得更加熟练了。
20172303 2018-2019-1《程序设计与数据结构》第7周学习总结
标签:void style 补充 它的 提交 ble 图片 enc 数据结构
原文地址:https://www.cnblogs.com/PFrame/p/9898934.html