1
노드 클래스가 있고 트리에 요소를 추가 할 때 문제를 좁히려 고합니다. 내 노드 클래스가 트리에 추가 할 노드를 제대로 만들지 못하고 있다고 생각합니다. 각 노드를 인쇄 할 때 메모리 주소가 반환됩니다. 다른 것을 인쇄 할 수없는 것 같습니다. 내 노드 클래스가 잘못되었는지 판단하는 데 도움이 될 것입니다. 어떻게 내 프로그램의 인쇄Java : 메모리 주소 또는 null 만 표시하는 이진 트리 노드
예 :
는([[email protected])
([[email protected])
([[email protected])
([[email protected])
TreeNode
클래스 :
public class TreeNode {
char[] data;
TreeNode left, right, parent;
// used for printing:
int column;
int row;
int center;
public TreeNode(char[] data) {
this.data = data;
left = right = parent = null;
}
@Override
public String toString() {
return "(" + data + ")";
}
public int return_letter(){
char x = data[0];
int b = Character.getNumericValue(x);
return b;
}
public int findMaxDepth() {
int lmax = 0;
int rmax = 0;
if (left != null) {
lmax = left.findMaxDepth();
}
if (right != null) {
rmax = right.findMaxDepth();
}
return 1 + Math.max(lmax, rmax);
}
}
: 당신이 뭔가를 할, 또는 방법의 데이터를 인쇄되는 배열의 항목의 문자열 표현을 얻기 위해이 방법 안에
Arrays.toString(data)
을 사용할 수 있습니다 ... 자세한 정보를 제공해주십시오. 문제를 보여주는 짧지 만 완전한 프로그램이 도움이 될 것입니다. –오류 메시지를 게시 하시겠습니까? – sunrize920
'@Override public String toString() {return "("+ data + ")";}'는 원하는 것을 인쇄하지 않습니다. 'Arrays.toString (data)'를 사용하여 배열 내용의 문자열 표현을 가져옵니다. –