zoukankan      html  css  js  c++  java
  • leetcode

    Follow up for problem "Populating Next Right Pointers in Each Node".

    What if the given tree could be any binary tree?

    Would your previous solution still work?

    Note:

    • You may only use constant extra space.

    For example,
    Given the following binary tree,

             1
           /  
          2    3
         /     
        4   5    7
    

    After calling your function, the tree should look like:

             1 -> NULL
           /  
          2 -> 3 -> NULL
         /     
        4-> 5 -> 7 -> NULL

    /**
     * Definition for binary tree with next pointer.
     * struct TreeLinkNode {
     *  int val;
     *  TreeLinkNode *left, *right, *next;
     *  TreeLinkNode(int x) : val(x), left(NULL), right(NULL), next(NULL) {}
     * };
     */
    struct TreeLinkNode
    {
    	int val;
    	TreeLinkNode *left, *right, *next;
    	TreeLinkNode(int x) : val(x), left(NULL), right(NULL), next(NULL) {}
    };
    class Solution {
    public:
        void connect(TreeLinkNode *root) {
    		TreeLinkNode *head = NULL;
    		TreeLinkNode *prev = NULL;
    		TreeLinkNode *cur  = root;
    		while(cur != NULL)
    		{
    			while(cur != NULL)
    			{
    				if(cur->left != NULL)
    				{
    					if(prev != NULL)
    					{
    						prev->next = cur->left;
    					}
    					else
    					{
    						head = cur->left;
    					}
    					prev = cur->left;
    				}
    				if(cur->right != NULL)
    				{
    					if(prev != NULL)
    					{
    						prev->next = cur->right;
    					}
    					else
    					{
    						head = cur->right;
    					}
    					prev = cur->right;
    				}
    				cur = cur->next;
    			}
    			cur = head;
    			head = NULL;
    			prev = NULL;
    		}
        }
    };


  • 相关阅读:
    JS在文本框光标处插入文本
    nodejs.exe版安装
    JS实现移动层
    JS实现日历
    Ajax相关
    机器学习 目录
    Butterfly 主题魔改记录
    《机器学习》西瓜书习题 第 6 章
    numpy 中判断某字符串 array 是否含有子字符串
    《机器学习》西瓜书习题 第 5 章
  • 原文地址:https://www.cnblogs.com/yxwkf/p/5079905.html
Copyright © 2011-2022 走看看