博客作业05--查找
1.学习总结
1.1查找的思维导图
1.2 查找学习体会
- 通过学习查找,可以把之前学习的树运用在查找这一方面,树的知识就有BST,AVL树,B树,一些内容都是环环相扣
的,都是在前面的基础上增强,然后学习了哈希表,了解了哈希函数,哈希冲突的解决,最大的收获是了解到map,
hash-map,通过前人的源代码,了解了红黑树,容器等基本概念,利用map就可以轻松解决qq账号等问题。
,
2.PTA实验作业
2.1 题目1:6-2 是否二叉搜索树
2.2 设计思路
* 定义静态变量 min为-32768
* 如果T为空树,return true
否则
中序遍历左子树
如果根节点大于min,赋值于min
否则return false
中序遍历右子树
* return true
2.3 代码截图
2.4 PTA提交列表说明。
2.1 题目16-3 二叉搜索树中的最近公共祖先
2.2 设计思路
* while BST不空
如果u大于节点 BST指向右孩子节点
要不然u小于节点 BST指向左孩子节点
否则 退出循环
* 如果BST空 return error
* BST =T;
* 对于v也是如上操作
* while T不空
如果节点在u,v之间,return节点
要不然节点大于u,v, T指向左孩子节点
否则,T指右左孩子节点
2.3 代码截图
2.4 PTA提交列表说明。
- 原先代码
- 1:sample 2 等价(ERROR重定义) 6:sample 2 等价(ERROR重定义)7:sample 2 等价(ERROR重定义)
测试点是由于没有按题目return error - 3:sample 2 等价(ERROR重定义) 5:sample 2 等价(ERROR重定义)
缺少考虑节点等于u,v的情况
2.1 题目1:QQ帐户的申请与登陆
2.2 设计思路
* 定义整形变量n,i,,字符变量point,id,password,map字符串mymap
* 输入n
* for i=0 to n
输入命令符point,账号id,密码password
如果命令符point为N,则:
如果mymap已有账号,输出ERROR Exist
否则 将id,password存入map中,并输出NEW ok
如果 如果命令符point为L,则:
如果map账号不存在,输出.ERROR:Not Exist
否则
如果 map密码不对,输出ERROR:wrpong pw
不然输出login:ok
* end for
2.3 代码截图
2.4 PTA提交列表说明。
3.截图本周题目集的PTA最后排名
3.1 PTA排名
3.2 我的总分:
- 我的得分2.5分
4. 阅读代码
地址:https://blog.csdn.net/v_JULY_v/article/details/6114226
- 这篇代码的好处在于出现的生词比其源代码少很多,让我不用看的头昏脑涨,让我花费较少的时间去了解红黑树的,
注释也很清晰。相对契合我们刚刚学习的二叉树,都是根据左子树小于节点,右子树大于节点来编写代码。