-1
private void case1(Tree t, Tree root) {
//System.out.println(root.left != t);
if (root.left != t || root.right != t)
case1(t, (root.value > t.value) ? root.left : root.right);
else {
if (root.left == t)
root.left = null;
else
root.right = null;
}
이유는 root.left는 't'실제로 동일한 경우에도 조건이 TRUE 평가 IF 처음이다? 나는 print to console을 통해 확인했으며 첫 번째 조건은 false가되었다. 따라서 IF 조건은 거짓이어야하지만 문구는 여전히 평가됩니다. 전체 코드는 꽤 큽니다. 필요한 경우 더 많은 스 니펫을 제공 할 수 있습니다. 같은IF (A || B) 조건이 조건 중 하나가 거짓 일 때 TRUE로 평가되는 이유는 무엇입니까?
이 언어 별입니까? – TylerH
'F or T'는 참입니다 ... 첫 번째 용어가 거짓으로 나오면 결과를 결정하기 위해 두 번째 용어를 평가해야합니다. –