题目来源


https://leetcode.com/problems/binary-tree-inorder-traversal/

iven a binary tree, return the inorder traversal of its nodes' values.

For example:
Given binary tree {1,#,2,3},

   1
\
2
/
3

return [1,3,2].


题意分析


Input:tree

Output: inorder traversal

Conditions:中序遍历,要非递归


题目思路


非递归实现


AC代码(Python)

 # Definition for a  binary tree node
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None class Solution:
# @param root, a tree node
# @return a list of integers
def iterative_inorder(self, root, list):
stack = []
while root or stack:
if root:
stack.append(root)
root = root.left
else:
root = stack.pop()
list.append(root.val)
root = root.right
return list def recursive_inorder(self, root, list):
if root:
self.inorder(root.left, list)
list.append(root.val)
self.inorder(root.right, list) def inorderTraversal(self, root):
list = []
self.iterative_inorder(root, list)
return list

最新文章

  1. phpcms V9 首页模板文件解析
  2. eclipse插件egit安装使用
  3. unity scroolView 和 groupview
  4. EOF的一点注记
  5. cocos2dx进阶学习之CCObject
  6. Asp.Net2.0下C#环境 Login控件实现用户登录
  7. Python 用POP接收邮件
  8. javascript实现有限状态机
  9. JVM堆内存监测的一种方式,性能调优依旧任重道远
  10. KVM虚拟化使用详解--技术流ken
  11. 线程(Thread、ThreadPool)
  12. Config安全控制
  13. bootstrap-daterangepicker双日历控件开始日期选择问题
  14. Springboot中如何在Utils类中使用@Autowired注入bean
  15. Python又把GUI界面攻下了,今天就告诉你怎么玩
  16. 深度学习之PyTorch实战(1)——基础学习及搭建环境
  17. 【CF960G】Bandit Blues(第一类斯特林数,FFT)
  18. JAXB性能优化
  19. Linux修改本地时间
  20. 【WPF】TabControl禁用部分选项卡

热门文章

  1. 【wikioi】1282 约瑟夫问题
  2. Ruby Hash与ActiveSupport’s HashWithIndifferentAccess对于key的区别
  3. linux下安装uuid库
  4. 字符串分割与存入List集合
  5. 转:mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
  6. url上使用#号好不好
  7. NSCharacterSet 简单用法
  8. Linux环境下实现生产者消费者问题
  9. MySQL数据库管理常用命令
  10. NBU7.0 Image Cleanup作业在没有配置hot catalog backup的情况下失败,Status=1