[LeetCode] 117. Populating Next Right Pointers in Each Node II

原创 2016年08月30日 12:45:34

思路:
BFS. 拿三个节点, head表示下一层的头, prev表示下一层上次遍历到了谁, cur是当前层正在遍历的点.

void connect(TreeLinkNode *root) {
    TreeLinkNode* head = root;
    TreeLinkNode* prev = NULL;
    TreeLinkNode* cur = NULL;

    while (head) {
        cur = head;
        prev = NULL;
        head = NULL;

        while (cur) {
            if (cur->left) {
                if (! head)
                    head = cur->left;
                else
                    prev->next = cur->left;
                prev = cur->left;
            }
            if (cur->right) {
                if (! head)
                    head = cur->right;
                else
                    prev->next = cur->right;
                prev = cur->right;
            }
            cur = cur->next;
        }
    }
}

[leetcode]117. Populating Next Right Pointers in Each Node II

注意一个事实:到根节点的左子节点的next要么指向根节点的右子节点(右子节点不为空),要么就指向根节点的next(或者next的next)节点p,直到该p节点具有下一代的节点。也就是说,将每一层的ne...
  • zorelemn
  • zorelemn
  • 2016年04月14日 16:13
  • 278

Populating Next Right Pointers in Each Node II 任意(非完美)二叉树添加next指针 @LeetCode

这道题有些tricky,有时间回头再研究一下 package Level4; import Utility.TreeLinkNode; /** * Populating Next Right...
  • hellobinfeng
  • hellobinfeng
  • 2013年11月21日 04:45
  • 3390

Hard-题目6:117. Populating Next Right Pointers in Each Node II

题目原文: Follow up for problem “Populating Next Right Pointers in Each Node”.What if the given tree co...
  • cmershen
  • cmershen
  • 2016年05月31日 23:24
  • 298

Leetcode 树 Populating Next Right Pointers in Each Node II

题意:给定一棵任意二叉树(不一定是perfect binary tree),将它每一个节点的next指针都指向该节点右边的节点 思路:bfs 这里不能用dfs了,只能用bfs bfs遍历将同一层的节点...
  • zhsenl
  • zhsenl
  • 2014年05月13日 22:19
  • 1030

【LeetCode-面试算法经典-Java实现】【117-Populating Next Right Pointers in Each Node(二叉树链接右指针II)】

【117-Populating Next Right Pointers in Each Node(二叉树链接右指针II)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题  F...
  • DERRANTCM
  • DERRANTCM
  • 2015年08月13日 06:18
  • 2000

[LeetCode]117.Populating Next Right Pointers in Each Node II

【题目】 Follow up for problem "Populating Next Right Pointers in Each Node". What if the given tree ...
  • SunnyYoona
  • SunnyYoona
  • 2014年12月24日 19:05
  • 1246

LeetCode(117) Populating Next Right Pointers in Each Node II

题目Follow up for problem “Populating Next Right Pointers in Each Node”.What if the given tree could b...
  • fly_yr
  • fly_yr
  • 2015年11月14日 15:13
  • 876

【LeetCode-面试算法经典-Java实现】【116-Populating Next Right Pointers in Each Node(二叉树链接右指针)】

【116-Populating Next Right Pointers in Each Node(二叉树链接右指针)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题  Giv...
  • DERRANTCM
  • DERRANTCM
  • 2015年08月12日 06:30
  • 3049

[LeetCode]Populating Next Right Pointers in Each Node II, 解题报告

前言 今天上午从9点半开始就做了这么一道题目,还是挺有意思的,这里记录一下 题目 Follow up for problem "Populating Next Right Pointer...
  • zinss26914
  • zinss26914
  • 2013年12月19日 11:17
  • 7606

Populating Next Right Pointers in Each Node -- LeetCode

原题链接: http://oj.leetcode.com/problems/populating-next-right-pointers-in-each-node/  这道题是要将一棵树的每一层维护...
  • linhuanmars
  • linhuanmars
  • 2014年04月12日 03:11
  • 10275
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[LeetCode] 117. Populating Next Right Pointers in Each Node II
举报原因:
原因补充:

(最多只允许输入30个字)