一、学习总结
1.查找的思维导图
2.查找学习体会
查找:顺序查找,二分查找,二叉排序树的查找……不同的情况对应不同的查找算法,每种查找的时间复杂度也不同。查找的ASL是每种算法的优劣标准。在写二叉树的代码中,要学会熟练的用递归算法会比较容易解决问题。
二、PTA作业
题目1:是否二叉搜索树
1.设计思路
定义最小静态变量 min=-32768
if(结果为空)
return true
递归遍历左子树
如果 T->data >min
min =T->data
否则
return false
递归遍历右子树
最后return true
2.代码截图
3.PTA提交说明
判断为空树时,应该返回false,而我返回了true
题目2:QQ账户的申请与登陆
com存放命令 N或L
输入 n组数据
for i=1 to n
{
输入 com
判断 com是否为N
为N :匹配qq号,如果匹配到,输出 ERROR:Exist
否则 存放到QQ中 ,输出 New :OK
不为N:匹配qq号,如果没有匹配到,输出 ERROR: Not Exist
否则判断密码是否匹配,如果匹配,输出 Login:OK
否则,输出 ERROR:Wrong PW
}
end
2.代码截图
3.PTA提交说明
map函数不会用,后面模仿别的同学写的
题目3:航空公司VIP客户查询
1.设计思路
int VIP客户个数n,计入最低飞行里程K, 查询个数m,飞行里程distance
char str和str1存放身份证信息
输入n,K,录入str
while(n--)
{
输入身份证号,飞行里程
如果找不到相同身份证号
里程是否<k,小于:按最小里程算入vip[str],大于:把里程算入vip[str]
找到相同身份证号
若里程是否<k,小于:vip[str] +=k,大于:vip[str] +=distance
}
输入m
while(m--){
是否找到相应身份证号
找不到:输出 No Info
否则 输出vip中的里程
}
2.代码截图
3.PTA提交记录
编译器的选择问题和运行超时问题
三、截图本周题目集的PTA最后排名
由于最后做,可以参考大佬的代码,本身的编程能力还是很弱,能看懂,自己写却没多少思路
四、代码阅读
map中数据删除的操作