PS:本文主要包括二叉树的前序,中序,后序,层序,垂序遍历,使用cpp语言。 前序遍历 struct TreeNode { int val; TreeNode* left; TreeNode* right; TreeNode(int x) : val(x), left(NULL), right(NU ...
分类:
其他好文 时间:
2021-04-20 15:06:15
阅读次数:
0
1.构造二叉树的必要条件 必须需要中序遍历和一个前序或者中序遍历 构造二叉树=前序+中序 =后序+中序 2.那如何根据中序和后序遍历去构造二叉树呢? 比如给出 inorder(中序)=[9,3,15,27] postorder(后序遍历)=[9,15,7,20,3] 就可以构造出一个唯一的二叉树: ...
分类:
其他好文 时间:
2021-04-20 14:03:16
阅读次数:
0
树 建树 struct tr{ char x; tr*lc,*rc; }; #define nu NULL // 建树 tr* create() { tr*t ; char x;cin>>x; if(x=='#') { t=nu; }else{ t=new tr; t->x=x; t->lc=nu; ...
分类:
其他好文 时间:
2021-04-19 15:00:42
阅读次数:
0
翻转一棵二叉树。 示例: 输入: 4 / \ 2 7 / \ / \1 3 6 9输出: 4 / \ 7 2 / \ / \9 6 3 1 来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/invert-binary-tree著作权归领扣网络所有。 ...
分类:
其他好文 时间:
2021-04-19 14:42:03
阅读次数:
0
给定一个二叉树的根节点 root ,返回它的 中序 遍历。 示例 1: 输入:root = [1,null,2,3] 输出:[1,3,2] class Solution: def inorderTraversal(self, root: TreeNode) -> List[int]: def in_ ...
分类:
其他好文 时间:
2021-04-15 12:16:15
阅读次数:
0
给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。 https://leetcode-cn.com/problems/minimum-distance-between-bst-nodes/ /** * Definition for a binary tree nod ...
分类:
其他好文 时间:
2021-04-13 12:43:51
阅读次数:
0
1. 翻转二叉树:https://leetcode-cn.com/problems/invert-binary-tree/ 2. 二叉树展开为链表,关键在于找到递归部分:https://leetcode-cn.com/problems/flatten-binary-tree-to-linked-li ...
分类:
其他好文 时间:
2021-04-13 12:42:14
阅读次数:
0
比如外存中有100G的字符串文件,1G的内存,对字符串进行排序操作。 1.首先将100G的内容分成若干个小部分,每个部分不超过500MB。分别读取这些小部分进行排序,然后写入到外存中。这样就得到了若干个已经排好序的小部分。 2.多路归并排序,(相对二路归并而言)。对于k个已经排好序的小部分,每次取出 ...
分类:
编程语言 时间:
2021-04-13 12:30:46
阅读次数:
0
利用上一题求深度的做法 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = ...
分类:
其他好文 时间:
2021-04-13 12:05:30
阅读次数:
0
二叉树本身是一种递归的数据类型,二叉树的许多操作离不开递归。非递归遍历包括结点入栈,先访问右子树,再访问根节点,访问左子树,先序和后序的非递归算法有待调试。 #include <stdio.h> #include<stdlib.h> #include<stdbool.h> typedef char ...
分类:
编程语言 时间:
2021-04-12 12:56:41
阅读次数:
0