编程实现前、中、后序的递归与非递归算法(共六个算法)。特别要求:设计并实现构造二叉树链式存储的算法。 ...
分类:
编程语言 时间:
2020-10-29 09:52:32
阅读次数:
18
class Solution { public List<Integer> postorderTraversal(TreeNode root) { //一般解法,前序遍历后,翻转下结果集,注意下 与前序遍历的进栈顺序不一样 //(前序) 根左右 --> 变为 根右左 --> 翻转 左右根 (后续) ...
分类:
其他好文 时间:
2020-10-27 11:40:04
阅读次数:
20
题目介绍 给定正整数n,利用1到n构造所有可能的二叉树,并返回。 Example: Input: 3 Output: [ [1,null,3,2], [3,2,null,1], [3,1,null,null,2], [2,1,3], [1,null,2,null,3] ] Explanation: ...
分类:
其他好文 时间:
2020-10-26 11:19:06
阅读次数:
17
题目介绍 判断给定二叉树是否为一棵二叉搜索树。 Examples: 2 / \ 1 3 Input: [2,1,3] Output: true 5 / \ 1 4 / \ 3 6 Input: [5,1,4,null,null,3,6] Output: false Solution 仅仅使用递归判断 ...
分类:
其他好文 时间:
2020-10-26 11:18:28
阅读次数:
24
题目介绍 给定二叉树,将其原地变成一个链表。 Example: 1 / \ 2 5 / \ \ 3 4 6 1 \ 2 \ 3 \ 4 \ 5 \ 6 Solutions 直观解法 发现链表的结果与先序遍历一致,因此先进行先序遍历,再根据遍历的结果构造链表。 # Definition for a b ...
分类:
其他好文 时间:
2020-10-26 11:17:57
阅读次数:
15
二叉树的后续遍历(Leetcode 145) 数据结构定义: // Definition for a binary tree node. public class TreeNode { int val; TreeNode left; TreeNode right; TreeNode() {} Tre ...
分类:
其他好文 时间:
2020-10-24 10:25:33
阅读次数:
22
题目 题目 当然,根固定为$1$,但是第一个被点亮的灯不一定是$1$。 做法 这里我只会讲最终做法,但是如果你要问这个结果到底是怎么得到的,其中的心路历程是什么,这篇博客:https://www.luogu.com.cn/blog/MachineryCountry/solution-p4253相信能 ...
分类:
其他好文 时间:
2020-10-20 16:40:42
阅读次数:
36
先序遍历 Stack<TreeNode> stk = new Stack<>(); stk.push(root); while (!stk.empty()) { TreeNode cur = stk.pop(); if (cur != null) { // visit cur stk.push(cu ...
分类:
其他好文 时间:
2020-10-19 22:18:07
阅读次数:
24
import java.util.*; public class TreeRightView { /二叉树的定义/ class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; } } publ ...
分类:
其他好文 时间:
2020-10-13 17:05:45
阅读次数:
22
LeetCode 117 填充每个节点的下一个右侧节点 问题描述: 给定一个二叉树 struct Node { int val; Node *left; Node *right; Node *next; } 填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 ...
分类:
其他好文 时间:
2020-10-09 20:50:04
阅读次数:
18