이진 트리에 저장된 문자열을 검색하려면 어떻게해야하는지 확신 할 수 없습니다. 필자는 검색 방법을 작성했지만 필자는 그것을 전달할 내용을 이해하지 못합니다. 트리에 추가하기 전에 문자열을 검색해야합니다. 발견되면 새로운 노드를 추가하는 대신 노드 객체 내의 카운터를 증가시켜야합니다. 나무는 그럭저럭 분류되지 않는다.정렬되지 않은 이진 트리에서 문자열 검색
내 질문에 추가하기 전에 어떻게 검색합니까?
public Node treeSearch(String s, TreeNode root){
if(root.toString().equals(s)){
return root;
}
if(left != null){
left.treeSearch(s, root.left);
if(root.toString().equals(s)){
return root;
}
}
if(right != null){
right.treeSearch(s, root.right);
if(root.toString().equals(s)){
return root;
}
}else{
return null;
}
}
System.out.println("Enter string to be stored");
stringValue = k.nextLine();
if (theString.isEmpty() == true) {
node.add(stringValue, count);
} else {
// I am not sure what to do here
// How do I send the string to my search method?
stringValue.treeSearch();
}
나는이에 대한 검색 방법을 업데이트합니다.
public Node treeSearch(String s, Node root){
if(root.toString().equals(s)){
return root;
}
if(left != null){
left.treeSearch(s, root.left);
return root;
}
if(right != null){
right.treeSearch(s, root.right);
return root;
}else{
return null;
}
}
문자열을 찾고 있으므로 원하는 문자열을 전달하십시오. 'treeSearch()'메소드는 어디에 구현 되었습니까? –
'treeSearch' 메쏘드의 서명에 따라 검색을 위해'String'을, 트리의 루트를위한'Node' 객체를 전달해야합니다. –