114 Flatten Binary Tree to Linked List

Given a binary tree, flatten it to a linked list in-place.

将二叉树展开成链表

[]

(D:\dataStructure\Leetcode\114.png)

思路:将根节点与左子树相连,再与右子树相连。递归地在每个节点的左右孩子节点上,分别进行这样的操作。

代码

class Solution(object):
def flatten(self, root):
if root == None:
return
if root.left == None and root.right == None:
return
self.flatten(root.left)
self.flatten(root.right)
tmp = root.left
root.right = root.left
root.left = None
while root.right:
root = root.right
root.right = tmp

最新文章

  1. 自动化工具selenium
  2. ListView实现原理
  3. 欲实施CRM软件,必须先懂什么是CRM软件
  4. 【转】getHibernateTemplate出现的所有find方法的总结
  5. rsync+inotify-tools文件实时同步
  6. HA高可用配置
  7. win7/win8 64位系统注册TeeChart8.ocx 控件---以及dllregisterserver调用失败问题解决办法
  8. F - Rain on your Parade - hdu 2389(二分图匹配,Hk算法)
  9. MongoDB C Driver and APIinstances linux MongoDB安装配置
  10. 在Ubuntu中使用JAVA与tomcat搭建web服务器
  11. 创建发布自己的npm包
  12. 面试中被问Spring循环依赖的三种方式!!!
  13. zzw原创_ipv6下环境配置防火墙及FTP处理一例
  14. python 常见问题
  15. eclipse生成可执行jar包(引入第三方.jar文件)
  16. Western Subregional of NEERC, Minsk, Wednesday, November 4, 2015 Problem K. UTF-8 Decoder 模拟题
  17. springmvc执行原理及自定义mvc框架
  18. laravel 安装添加多站点
  19. idea优秀插件(Java开发常用)
  20. 移植madplay到jz2440【学习笔记】

热门文章

  1. Tozan and Gezan(x*y<a*b)
  2. loadrunner通过web的post请求方法测接口 1
  3. MySQL增、删、改、查基础操作(C++)
  4. 基于webhook方案的Git自动部署方案
  5. PHPExcel之蛋疼
  6. React Native Build Apk
  7. python爬虫-smtplib模块发送邮件
  8. 7-19 计算有n个字符串中最长的字符串长度 (40 分)
  9. vue.js 中使用(...)运算符报错
  10. FreeModBus源码解析(1)---开篇