66. 二叉树的前序遍历.md
描述
给出一棵二叉树,返回其节点值的前序遍历。
您在真实的面试中是否遇到过这个题?
样例
给出一棵二叉树 {1,#,2,3},
   1
    \
     2
    /
   3
返回 [1,2,3].
Binary Tree Preorder Traversal
   Description
Given a binary tree, return the preorder traversal of its nodes' values.
/**
* Definition of TreeNode:
* public class TreeNode {
*     public int val;
*     public TreeNode left, right;
*     public TreeNode(int val) {
*         this.val = val;
*         this.left = this.right = null;
*     }
* }
*/
public class Solution {
   /**
    * @param root: A Tree
    * @return: Preorder in ArrayList which contains node values.
    */
   public List<Integer> preorderTraversal(TreeNode root) {
       // write your code here
       List<Integer> res = new ArrayList<>();
       Stack<TreeNode> lisk = new Stack<>();
       if(root == null){
           return res;
       }
       lisk.push(root);
       while(!lisk.isEmpty()){
           //取出后加入的:即左孩子
           TreeNode temp = lisk.pop();
           res.add(temp.val);
           //先加入右边的
           if(temp.right != null){
               lisk.push(temp.right);
           }
           //后加入左边的
           if(temp.left != null){
               lisk.push(temp.left);
           }
       }
       return res;
   }
}
66. 二叉树的前序遍历.md的更多相关文章
- lintcode :Binary Tree Preorder Traversal 二叉树的前序遍历
		题目: 二叉树的前序遍历 给出一棵二叉树,返回其节点值的前序遍历. 样例 给出一棵二叉树 {1,#,2,3}, 1 \ 2 / 3 返回 [1,2,3]. 挑战 你能使用非递归实现么? 解题: 通过递 ... 
- 【C++】根据二叉树的前序遍历和中序遍历重建二叉树并输出后续遍历
		/* 现在有一个问题,已知二叉树的前序遍历和中序遍历: PreOrder:GDAFEMHZ InOrder:ADEFGHMZ 我们如何还原这颗二叉树,并求出他的后序遍历 我们基于一个事实:中序遍历一定 ... 
- LeetCode:144_Binary Tree Preorder Traversal | 二叉树的前序遍历 | Medium
		题目:Binary Tree Preorder Traversal 二叉树的前序遍历,同样使用栈来解,代码如下: struct TreeNode { int val; TreeNode* left; ... 
- 【LeetCode题解】144_二叉树的前序遍历
		目录 [LeetCode题解]144_二叉树的前序遍历 描述 方法一:递归 Java 代码 Python 代码 方法二:非递归(使用栈) Java 代码 Python 代码 [LeetCode题解]1 ... 
- LintCode-66.二叉树的前序遍历
		二叉树的前序遍历 给出一棵二叉树,返回其节点值的前序遍历. 样例 给出一棵二叉树 {1,#,2,3}, 返回 [1,2,3]. 挑战 你能使用非递归实现么? 标签 递归 二叉树 二叉树遍历 非递归 c ... 
- LeetCode:二叉树的前序遍历【144】
		LeetCode:二叉树的前序遍历[144] 题目描述 给定一个二叉树,返回它的 前序 遍历. 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,2,3] 题目分析 如果用递 ... 
- 剑指offer面试题:输入某二叉树的前序遍历和中序遍历,输出后序遍历
		二叉树的先序,中序,后序如何遍历,不在此多说了.直接看题目描述吧(题目摘自九度oj剑指offer面试题6): 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结 ... 
- LeetCode 144. 二叉树的前序遍历(Binary Tree Preorder Traversal)
		144. 二叉树的前序遍历 144. Binary Tree Preorder Traversal 题目描述 给定一个二叉树,返回它的 前序 遍历. LeetCode144. Binary Tree ... 
- leecode刷题(28)-- 二叉树的前序遍历
		leecode刷题(28)-- 二叉树的前序遍历 二叉树的前序遍历 给定一个二叉树,返回它的 前序 遍历. 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,2,3] 思路 ... 
随机推荐
- django----基于Form组件实现的增删改和基于ModelForm实现的增删改
			一.ModelForm的介绍 ModelForm a. class Meta: model, # 对应Model的 fields=None, # 字段 exclude=None, # 排除字段 lab ... 
- poj1094 恶心题,,每次加边进行判断
			/* 给定一组偏序关系,问最少第几步能确定次序 如果出现环,问第几步出现环 因为要求第几步确定次序或者第几步出现环,所以每次读入一个偏序关系就进行一次拓扑排序 */ #include <iost ... 
- eclipse检出SVN项目的正确步骤
			一.在工作空间新建工作目录:workspace-xf 二.在工作目录下workspace-xf 新建文件夹 tdvs ,进入该文件夹鼠标右键:SVN CheckOut 检出需要的项目 三.打开ecl ... 
- python http请求类
			# -*- coding: UTF-8 -*- # coding="utf-8" import httplib2 import json from urllib.parse imp ... 
- Html页面添加百度地图
			1.进入百度地图开放平台 http://lbsyun.baidu.com/ 2.进入右上角的 “API控制台” 在这里创建应用 并 获取密钥 3.进入 如下地址 创建地图 http://api.m ... 
- IDEA新建模块
- social psychology 10th  David G. Myers
			Social psychology is a science that studies the influences of our situations, with special attention ... 
- Django认证系统auth认证
			使用Django认证系统auth认证 auth认证系统可以处理范围非常广泛的任务,且具有一套细致的密码和权限实现.对于需要与默认配置不同需求的项目,Django支持扩展和自定义认证;会将用户信息写入到 ... 
- PyOpenCV图像逆时针旋转90度
			warpAffine方法效果很搓,留下大片黑色区域. 使用flip和transpose可以实现逆时针旋转90度.先flip或先transpose均可. #coding:utf-8 import cv2 ... 
- 小程序报错:request:fail错误(含https解决方案)(真机预览问题)
			问题描述:域名已经备案,我全部都有,也在后台配置了,但是手机预览,还是请求失败, PC端是可以请求数据出来的 新版开发者工具增加了https检查功能:可使用此功能直接本地避开ssl协议版本检查,但是此 ... 
