我有二进制搜索树包含学生记录,包括ID和学生的姓名,年龄和电子邮件和电话号码。查找二进制搜索结果中的树
所有的学生都会根据他们的学生证号码存储在二进制搜索树中,并且可以保证学生的这种排序(通过ID)与姓氏按字母排序完全一样,然后名字。
我使用学生ID来查找节点的方法。
这就是我想要做的方法来找到学生的姓氏和名字节点的编码
private Unfstudent findNode(Unfstudent student, int id) {
if (student == null)
return null;
}
if (id < student.getID()) {
return findNode(student.getLeft(), id);
}
else if (id > student.getID()) {
return findNode(student.getRight(), id);
}
else {
return student;
}
}
。
任何人都可以帮助我吗?
嗯......这是几乎相同的过程......如果当前节点为null,则学生可以不会被发现....如果当前节点出现在姓氏之后,则按字母顺序排列firstname,然后在左侧树中搜索。如果它在之前,然后搜索在正确的树。否则返回当前节点。在java中使用比较器的确定排序的过程非常简单,字符串 – Madhusudhan