SELECT *
FROM (SELECT t2.*, LEAD(LEVELS) OVER(ORDER BY RN) aa,
CASE
WHEN LEAD(LEVELS) OVER(ORDER BY RN) > LEVELS THEN
0
ELSE
1
END LEAF
FROM (SELECT ROWNUM rn, t.*, LEVEL LEVELS
FROM test t
START WITH n_parent_id = 0
CONNECT BY PRIOR n_id = n_parent_id) t2)
WHERE leaf = 1