0
검색중인 값이 트리에 존재하는지 여부를 나타내는 부울 값을 반환하는 BST 검색 방법에 대해 작업했습니다.이 코드에서 잘못된 점은 무엇입니까? 그러나, true로 돌아온 후에 컨트롤은 다시 : else if block.Can 누군가가 내가 뭘 잘못하고 있는지 말해 줄 수 있습니까?BST 검색 방법이 예상 결과를 반환하지 않음
도움을 받으실 수 있습니다. 미리 감사드립니다 !!
public class Node
{
public int Value { get; set; }
public Node Left { get; set; }
public Node Right { get; set; }
public Node(int value, Node left, Node right)
{
Value = value;
Left = left;
Right = right;
}
}
public class BinarySearchTree
{
public static bool Search(Node root, int value)
{
if (root!=null)
{
if (root.Value == value)
{
return true;
}
else if (root.Value < value)
{
Search(root.Right, value);
}
else
{
Search(root.Left, value);
}
}
return false;
}
public static void Main(string[] args)
{
Node n1 = new Node(1, null, null);
Node n3 = new Node(4, null, null);
Node n2 = new Node(2, n1, n3);
bool flag = Search(n2, 4);
//flag should be true
Console.WriteLine("************* " + flag);
Console.ReadKey();
}
}
무슨 실수요 !!! 고마워요 !! – Dev