题解 | #基本字符串压缩#

输出单层结点

http://www.nowcoder.com/practice/cb6c883b123b44399377d0c71e6ba3ea

bfs的变形
用count保存当前层数,当达到dep时进行成殓操作

public class TreeLevel {
    public ListNode getTreeLevel(TreeNode root, int dep) {
        // write code here
        int count = 1;
        Deque<TreeNode> queue = new ArrayDeque<>();
        queue.offer(root);
        ListNode head = new ListNode(-1);
        ListNode p = head;

        while(!queue.isEmpty()){ 
            for(int i = queue.size() - 1; i >= 0 ; i --){
                TreeNode node = queue.poll();
                if(count == dep){
                    p.next = new ListNode(node.val);
                    p = p.next;
                }
                if(node.left != null) queue.add(node.left);
                if(node.right != null) queue.add(node.right);
            }
            count ++;
        }

        return head.next;
    }
}
全部评论

相关推荐

点赞 评论 收藏
分享
06-18 13:28
已编辑
门头沟学院 Web前端
爱睡觉的冰箱哥:《给予你300的工资》,阴的没边了
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务