题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 解题思路 先给定一个二叉树的样式: 前段时间做过一道题,其要求是:从上到下按层 ...
原创文章,转载请注明出处 本题牛客网地址 博客文章索引地址 博客文章中代码的github地址 .题目 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 例如: 输入二叉树 输出顺序 .思路 本题使用两个栈作为辅助容器。打印某一层节点时,把下一层的子节点保存到栈内。如果当前打印的是奇数层,则先保存左子树节 ...
2018-03-24 15:24 0 972 推荐指数:
题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 解题思路 先给定一个二叉树的样式: 前段时间做过一道题,其要求是:从上到下按层 ...
题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 分析 用一个布尔量控制从左到右还是从右到左的顺序;如果为真则他的左右孩子按照从左到右的顺序放入list中,否则按照从右到左的顺序 ...
一,问题描述 请构造一棵二叉树,并按照“之字形”顺序打印这棵二叉树。 所谓“之字形”打印,第一行是从左到右打印,第二行是从右到左打印,第三行又是从左到右打印.... 即,奇数行(根为第一行)是从左到右打印,而偶数行是从右到左打印。 如上图:该二叉树的打印顺序为: 20 30 10 ...
按之字形顺序打印二叉树 题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 思路 根据题意,每行的节点的访问顺序是相反的,我们可以用两个栈来隔行存储,一个栈中根据“左结点-> ...
原创文章,转载请注明出处! 本题牛客网地址 博客文章索引地址 博客文章中代码的github地址 1.题目 从上往下打印出二叉树的每个节点,同层节点从左至右打印。例如: 图 不分行从上往下按层打印二叉树的顺序为8-6-10-5-7-9-11 2.思路 ...
原创文章,转载请注明出处! 博客文章索引地址 1.题目 输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径由结点和有向边组成,从根结点到叶节点。 // 二叉树结点的定义 struct BinaryTreeNode { int val ...
原创博文,转载请注明出处! # 题目 # 举例 下图二叉树的深度为4,最长路径为1-2-5-7. # 思路(递归) 如果一个树只有一个节点,它的深度为1; 如果根节点只有左子树而没有右子树,那么树的深度应该是其左子树的深度 ...
本博文是原创博文,转载请注明出处! # 本文为牛客网《剑指offer》刷题笔记 1.题目 # 输入某二叉树的前序遍历和中序遍历的结果,重建二叉树 2.思路(递归) # 前序遍历中,第一个数字是二叉树的根节点 # 中序遍历中,根节点的左侧是左子树的节点,根节点的右侧是右子树的节点 ...