所谓遍历(Traversal)是指沿着某条搜索路线,依次对树中每个结点均做一次且仅做一次访问。访问结点所做的操作依赖于具体的应用问题。遍历是二叉树上最重要的运算之一,是二叉树上进行其它运算之基础。遍历方式分别为:先序遍历、中序遍历、后序遍历。二叉树前序遍历:根-> 左-> 右;二叉树中序遍历:左->... ...
分类:
其他好文 时间:
2021-02-02 10:39:44
阅读次数:
0
144. 二叉树的前序遍历 地址:https://leetcode-cn.com/problems/binary-tree-preorder-traversal/ //给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 // // // // 示例 1: // // //输入:root = ...
分类:
其他好文 时间:
2021-01-05 11:30:49
阅读次数:
0
102. 二叉树的层序遍历 //给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 // // // // 示例: //二叉树:[3,9,20,null,null,15,7], // // // 3 // / \ // 9 20 // / \ // 15 7 ...
分类:
其他好文 时间:
2021-01-04 11:31:50
阅读次数:
0
二叉树的锯齿形层序遍历 题目: 给定一个二叉树,返回其节点值的锯齿形层序遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。 例如: 给定二叉树 [3,9,20,null,null,15,7], 3 / 9 20 / 15 7 返回锯齿形层序遍历如下: [ [3], [2 ...
分类:
其他好文 时间:
2020-12-28 11:27:02
阅读次数:
0
###什么是二叉树? 二叉树是n个有限元素的集合,该集合或者为空、或者由一个称为根(root)的元素及两个不相交的、被分别称为左子树和右子树的二叉树组成,是有序树。当集合为空时,称该二叉树为空二叉树。在二叉树中,一个元素也称作一个结点(来源百度百科词条:二叉树) 其他的相关树的知识点,就不再这里阐述 ...
分类:
编程语言 时间:
2020-12-10 11:21:39
阅读次数:
6
递归算法 { if(bt!=NULL) { InOrder(bt->lchild); printf("%d",bt->data); InOrder(bt->rchild); } } 非递归算法 Void InOrder(BTNode *bt) { BTNode *p=bt; int top =0; ...
分类:
其他好文 时间:
2020-11-01 21:18:59
阅读次数:
20
103. 二叉树的锯齿形层次遍历 锯齿形层次遍历,思路与二叉树的层次遍历相同,稍微做点改动,区别在于此处使用的是双端队列,分别从前到后和从后到前地遍历二叉树。代码如下 vector<vector<int>> zigzagLevelOrder(TreeNode* root) { deque<TreeN ...
分类:
其他好文 时间:
2020-10-06 19:57:09
阅读次数:
25
二叉树的遍历 树的遍历是树的一种重要的运算。所谓遍历是指对树中所有结点的信息的访问,即依次对树中每个结点访问一次且仅访问一次,我们把这种对所有节点的访问称为遍历(traversal)。那么树的两种重要的遍历模式是深度优先遍历和广度优先遍历,深度优先一般用递归,广度优先一般用队列。一般情况下能用递归实 ...
分类:
其他好文 时间:
2020-09-09 19:03:13
阅读次数:
33
102. 二叉树的层序遍历 给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 示例: 二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回其层次遍历结果: [ [3], [9,20], [15,7] ] # ...
分类:
其他好文 时间:
2020-07-26 15:44:06
阅读次数:
63
图解 二叉树的四种遍历 LeetCode 题目中,二叉树的遍历方式是最基本,也是最重要的一类题目,我们将从「前序」、「中序」、「后序」、「层序」四种遍历方式出发,总结他们的递归和迭代解法。 题目说明 这里是 4 道相关题目: 144.二叉树的前序遍历 94. 二叉树的中序遍历 145. 二叉树的后序 ...
分类:
其他好文 时间:
2020-07-22 01:49:52
阅读次数:
113