思路: 对于一棵树,可以看成许多小树组成,每棵小树都有自己的root,我们从这里入手。 对于每棵小树我们都需要定位其root,对于preorder,第一个元素就是root,但inorder还需要查找,但如果每次都遍历搜索的话就会消耗很多时间,所以我们先把inorder的元素放入hash_map,元素 ...
分类:
其他好文 时间:
2021-04-26 13:04:38
阅读次数:
0
二叉树——144. 二叉树的前序遍历 题目: 思路: 前序遍历用递归,递归逻辑就是前序遍历的顺序:中左右,然后就行了。 代码: class Solution { public: void traversal(TreeNode* node, vector<int>& vec){ // 终止条件 if( ...
分类:
其他好文 时间:
2021-04-12 11:54:04
阅读次数:
0
█ 0.代码函数: ○ 0.1 边界 Integer.MAX_VALUE int[] preorder ==> preorder == null || preorder.length == 0 char[][] board ==> board == null int[][] matrix ==> ( ...
分类:
其他好文 时间:
2021-04-06 14:10:55
阅读次数:
0
一.二叉树的前序遍历 https://leetcode-cn.com/problems/binary-tree-preorder-traversal/ class Solution { public List<Integer> preorderTraversal(TreeNode root) { L ...
分类:
其他好文 时间:
2021-04-01 13:41:51
阅读次数:
0
给定一个二叉树的根节点 root ,返回它的 中序 遍历。使用递归、迭代、染色(迭代的另一种方法)三种方法实现。 ...
分类:
其他好文 时间:
2021-03-30 13:06:22
阅读次数:
0
Description: Given the root of a binary tree, return the bottom-up level order traversal of its nodes' values. (i.e., from left to right, level by lev ...
分类:
其他好文 时间:
2021-03-15 11:13:18
阅读次数:
0
问题: 给定二叉树,进行层序遍历,从底层向上输出。 Example 1: Input: root = [3,9,20,null,null,15,7] Output: [[15,7],[9,20],[3]] Example 2: Input: root = [1] Output: [[1]] Exam ...
分类:
其他好文 时间:
2021-02-26 12:54:45
阅读次数:
0
仅供自己学习 思路: 前面做过102,题目几乎相同,只是输出的方式不同,下意识BFS就选择了队列,但是发现不能解决,因为是单向取单向入得结构,不能从满足一左一右的输出形式。上课的时候了解到一个双端队列,刚好可以满足,只需要一个标记此时是左输出还是右输出即可。当时只想用一个双端队列即可,但是发现写着还 ...
分类:
其他好文 时间:
2021-02-18 13:57:19
阅读次数:
0
1.1、先序遍历 根结点-左子树-右子树 // 指针 void preorder(node* root) { if(root==NULL) return; //空树,递归边界 printf("%d\n",root->data); preoder(root->lchild); preoder(root ...
分类:
其他好文 时间:
2021-02-09 12:23:21
阅读次数:
0
所谓遍历(Traversal)是指沿着某条搜索路线,依次对树中每个结点均做一次且仅做一次访问。访问结点所做的操作依赖于具体的应用问题。遍历是二叉树上最重要的运算之一,是二叉树上进行其它运算之基础。遍历方式分别为:先序遍历、中序遍历、后序遍历。二叉树前序遍历:根-> 左-> 右;二叉树中序遍历:左->... ...
分类:
其他好文 时间:
2021-02-02 10:39:44
阅读次数:
0