zoukankan      html  css  js  c++  java
  • leetcode 116 填充每个节点的下一个右侧节点指针

    /*
    // Definition for a Node.
    class Node {
    public:
        int val;
        Node* left;
        Node* right;
        Node* next;
    
        Node() : val(0), left(NULL), right(NULL), next(NULL) {}
    
        Node(int _val) : val(_val), left(NULL), right(NULL), next(NULL) {}
    
        Node(int _val, Node* _left, Node* _right, Node* _next)
            : val(_val), left(_left), right(_right), next(_next) {}
    };
    */
    
    class Solution {
    public:
        Node* connect(Node* root) {
            if(!root)
            {
                return 0;
            }
            Node* Left=connect(root->left);
            Node* Right=connect(root->right);
        //子树之间的连线
            if(Left && Right)
            {
                while(Left && Right)
                {
                    Left->next=Right;
                    Left=Left->right;
                    Right=Right->left;
                }
                 while(Right)
                {
                    Right->next=NULL;
                    Right=Right->right;
                }
                root->next=NULL;
                return root;
            }
            else if(!Left && Right)
            {
                while(Right)
                {
                    Right->next=NULL;
                    Right=Right->right;
                }
                root->next=NULL;
                return root;
            }
            else if(!Right && Left)
            {
                while(Left)
                {
                    Left->next=NULL;
                    Left=Left->right;
                }
                root->next=NULL;
                return root;
            }
            else{
                root->next=NULL;
                return root;
            }
        }
    };
    每天进步一点点~
  • 相关阅读:
    hihocoder 1038
    hihocoder 1039
    poj 2774
    bzoj 4690&&4602
    poj 2417
    STL
    poj 1026
    poj 1064
    poj 1861(prim)
    poj 1129
  • 原文地址:https://www.cnblogs.com/libin123/p/14598884.html
Copyright © 2011-2022 走看看