1.本周学习总结
1.1思维导图
1.2谈谈你对查找运算的认识及学习体会
本章学习了查找的相关知识,了解了有关线性表查找、数表查找和哈希表查找查找算法。查找又称为检索,是指在某种数据结构种找出满足给定条件的元素。查找是一种实用工具,但在查找的时候有时也会出现冲突,这时就需要使用某些解决方法,平均查找长度ASL指标衡量它的性能。一个查找算法的ASL越大,其时间性能越差,ASL越小,其时间性能越好。
2.PTA实验作业
2.1.题目1:6-1 二叉搜索树的操作集
2.1.1设计思路
2.1.2代码截图
2.1.3本题PTA提交列表说明
2.2.题目2:6-4 jmu-ds-哈希表操作集
2.2.1设计思路
2.2.2代码截图
2.2.3本题PTA提交列表说明
Q1:编译错误?
A1:函数名字复制的时候没有把分号去掉。
Q2:查找不成功的测试点错误?
A2:查找不成功的查找次数在第一次比较哈希地址的时候就为1,而我把它当成0,导致一直过不去,后来改过来了。
2.3.题目3:7-1 QQ帐户的申请与登陆
2.3.1设计思路
2.3.2代码截图
2.3.3本题PTA提交列表说明
map函数的基本应用,还有一种使用迭代器的算法,跟这个差不多,不过不太懂,所以就没去用。
3.阅读代码
3.1 题目
3.2 解题思路
题目要求判断这是否是对一棵二叉搜索树或其镜像进行前序遍历的结果,如果数组可以构成前序遍历的二叉搜索树,那么对于根节点来说,左子树中最大的应该是左子树中最后一个叶节点,右子树最小的是右子树第一个叶节点,两者的下标之差为1. 题目说可能会是镜像的二叉搜索树,如果是,把前序遍历的二叉搜索树用后序遍历输出;如果不满足二叉搜索树,再判断是否为镜像的二叉搜索树,都不是输出NO。
3.3 代码截图
3.4 学习体会
本题是用数组建树,利用vector容器来处理结点。这些知识都不太会,多了解一些用法好处还是挺多的。