zoukankan      html  css  js  c++  java
  • LeetCode--114--二叉树展开为链表(python)

    给定一个二叉树,原地将它展开为链表。

    例如,给定二叉树

      1
      /
       2   5
      /    
     3 4      6
    将其展开为:

        1
         
          2
           
            3
           
               4
            
           5
             
            6

    将root的右子树放到root的左子树的最右边作为右孩子         将root的左孩子变为自己的右孩子 (root.left=None)           root = root.right

      1                                  1                                         1       
      /                               /                                             
       2   5                           2                                               2
      /                             /                                               /  
     3 4      6                     3  4                                             3  4   
                                                                                               
                                              5                                                 5
                                                                                                       
                                                 6                                                  6                    

     1 class Solution:
     2     def flatten(self, root: TreeNode) -> None:
     3         """
     4         Do not return anything, modify root in-place instead.
     5         """
     6         if root==None or root.left == None and root.right == None :
     7             return root
     8         while(root != None):
     9             if(root.left == None):
    10                 root = root.right
    11             else:
    12                 pre = root.left
    13                 while pre and pre.right!=None:
    14                     pre = pre.right
    15              16                 pre.right = root.right
    17                 root.right = root.left
    18                 root.left = None
    19                 root = root.right
  • 相关阅读:
    memcache安装 基于Red Hat 7.4
    LNMP源码编译
    LAMP源码编译
    Red Hat 7.4 安装laravel框架 基于xampp集成环境
    PHP 扩展开发检测清单(扩展开发必读)
    20 个 Laravel Eloquent 必备的实用技巧
    [项目推荐] Corcel 让你在 WordPress 中使用 Laravel
    Tumblr:我们是如何从 PHP 5 升级到 PHP 7 的
    PHP / Laravel 月刊 #23
    十个你需要在 PHP 7 中避免的坑
  • 原文地址:https://www.cnblogs.com/NPC-assange/p/11637830.html
Copyright © 2011-2022 走看看