1.课题描述
现要开发一个开放式的高校本科招生最低录取分数线的查询系统,供师生和学生家长等查询,高校自愿放入该校的信息,可能随时有高校加入。要求实现的查询功能有:
(1)    查询等于用户给定分数线的高校;
(2)    查询大于(或小于)用户给定分数线的高校;
(3)    查询最低录取分数线在用户给定的分数段中的高校。
2.课题分析
该系统主要的功能是查找,查找表为高校最低录取分数信息的集合。根据题意可知,该查找表中的元素个数可能随时增减,所以它是一个动态查找表,可采用树状结构保存。为了提高查询的速度,可建立二叉排序树并在二叉排序树中实现查找。
课题的第一个要求可以直接利用一般的二叉排序树的查找算法实现。
课题的第二个要求可以比较二叉排序树根结点的关键字值和给定的分数,若前者大于等于后者,根结点及其右子树中的结点全部满足要求,再在根结点的左子树中查找;否则只在根结点的右子树中查找即可。
课题的第三个要求可以比较二叉排序树根结点的关键字值和给定的分数段,若前者在给定的分数段中,根结点即满足要求,再在根结点的左、右子树中继续查找即可;若前者在给定的分数段的左侧,只在根结点的右子树中查找即可;若前者在给定的分数段的右侧,只在根结点的左子树即可。