binary tree nodes

알고리즘

[SQL]해커랭크 Binary Tree Nodes

LEFT JOIN과 서브쿼리를 사용한 2가지 풀이가 가능합니다. 서브쿼리를 사용한 코드부터 살펴보겠습니다. SELECT N , CASE WHEN P IS NULL THEN 'Root' WHEN N NOT IN (SELECT DISTINCT P FROM BST WHERE P IS NOT NULL) THEN 'Leaf' ELSE 'Inner' END AS node_type FROM BST ORDER BY N; 4번째 줄의 WHERE문을 입력하지 않으면 원하는 대로 코드가 출력되지 않습니다. 이 부분을 이해하느라 상당히 많은 시간이 소요됐는데 원인은 컬럼 P에 있는 NULL 때문입니다. NULL 값을 다룰 때는 항상 주의해야 할 것 같습니다. IS NOT NULL 조건이 없으면 Leaf 노드여야 할 노드들이..

truezero
'binary tree nodes' 태그의 글 목록