我必须实现一种形式的binary tree
,它显示了一个雇佣层次结构,其中老板是树根,下级员工是左节点,右节点是同级别的员工。同一级别的员工根据其员工编号进行安置。
public class Node {
private Person data;
private Node seniorEmployee;
private Node nextEmployee;
private Node lesserEmployee;
public Node(Member data, Node seniorEmployee) {
this.data = data;
this.seniorEmployee = seniorEmployee;
this.nextEmployee = null;
this.lesserColleague = null;
}
public Member getPerson() {
return this.data;
}
public Node getSeniorEmployee() {
return this.seniorEmployee;
}
public Node getNextEmployee() {
return this.nextEmployee;
}
public Node getLesserEmployee() {
return this.lesserEmployee;
}
public void setEmployee(Person e1) {
if (nextEmployee == null) {
nextEmployee = new Node(e1, this.seniorEmployee);
} else {
if (e1.compareTo(nextEmployee.getPerson()) > 0) {
} else {
}
}
public void setLesserEmployee(Member p1) {
if (lesserEmployee == null) {
lesserEmployee = new Node(e1, this.seniorEmployee);
} else {
if (e1.compareTo(lesserEmployee.getPerson()) > 0) {
} else {
}
}
到目前为止,我已经做到了这一点,但我不知道如何实现集合方法。
我认为这对同级别的员工来说是可以的:
public void setEmployee(Person e1) {
if (nextEmployee == null) {
nextEmployee = new Node(e1, this.seniorEmployee);
} else {
nextEmployee.setEmployee(e1);
}
}