0
에서 왼쪽과 오른쪽 아이는
나는 사전 편찬 이진 트리를 구현, 그리고 난이 입력이있는 경우 나, 예를 들어출력 노드, 한 번에 자바
curent node data ; left child data ; right child data
로 출력을 필요
banana apple curtain pumpkin egg
을 왼쪽 또는 오른쪽 또는 둘 왼쪽 경우 "-1"출력됩니다
banana ; apple ; curtain
apple ; -1 ; -1
curtain ; -1 ; pumpkin
pumpkin ; egg ; -1
egg ; -1 ; -1
: 이진 트리를 통해가는
나는 것으로 출력이 필요합니다 오른쪽 자식이 null입니다.
public void insert(String newData){
root = insert2(newData, root);
}
public BTNode insert2(String s, BTNode n){
if(n == null){
return new BTNode(s);
}
if(s.compareTo(n.data) < 0){
n.left = insert2(s, n.left);
if(n.right!=null)
System.out.println(n.data+" "+n.left.data+" "+n.right.data);
else System.out.println(n.data+" "+n.left.data +" "+ -1);
}else if(s.compareTo(n.data) > 0){
n.right = insert2(s, n.right);
if(n.left!=null)
System.out.println(n.data+" "+n.left.data+" "+n.right.data);
else System.out.println(n.data+" "+ -1 +" "+n.right.data);
}
return n;
}
내 시도의 출력은 다음과 같습니다 :
banana apple -1
banana apple curtain
curtain -1 pumpkin
banana apple curtain
pumpkin egg -1
curtain -1 pumpkin
banana apple curtain
감사합니다
다음은이 작업을 수행하는 나의 시도이다.
왜 insterting시 인쇄 중이십니까? 방문을위한 명령이 주어집니다. – luk32