
树
NoobPlayer_llke
除了编程啥都会点
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
PAT1115 Counting Nodes in a BST 二叉搜索树最后两层结点数量
二叉搜索树 (BST) 递归定义为具有以下属性的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于或等于它的根结点的值 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值 它的左、右子树也分别为二叉搜索树 将一系列数字按顺序插入到一个空的二叉搜索树中,然后,请你计算结果树的最低两层的结点个数。 输入格式 第一行包含整数N,表示插入数字序列包含的数字个数。 第二行包含N个整数,表示插入数字序列。 输出格式 以如下格式,在一行中,输出结果树的最后两层的结点数: n1 +...原创 2020-07-15 15:11:13 · 397 阅读 · 0 评论 -
PAT 1012Invert a Binary Tree反转二叉树(反转树,层序,中序)
传送 题目给定一颗二叉树,要求输出反转后二叉树的层序遍历序列和中序遍历序列 关于反转操作,是一个后序遍历交换的过程,最开始我是中序交换,怎么都不对,画了N遍图才意识过来 #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++) #define INF 0x3f3f3f3f #define x first...原创 2020-05-07 17:04:16 · 213 阅读 · 0 评论 -
1099 Build A Binary Search Tree构建二叉搜索树(中序+层序)
给定二叉树的具体结构以及一系列不同的整数,只有一种方法可以将这些数填充到树中,以使结果树满足 BST 的定义。 一次DFS(中序)把数值放到二叉搜索树中,再BFS(层序)输出一次即可 #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++) #define INF 0x3f3f3f3f #define x...原创 2020-05-07 16:03:13 · 142 阅读 · 0 评论 -
1064 Complete Binary Search Tree(完全二叉搜索树的层序)
https://pintia.cn/problem-sets/994805342720868352/problems/994805407749357568 根据完全二叉搜索树的特性,给出结点的值进行排序后就是该树的中序遍历 #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++) #define sca(...原创 2020-04-24 20:40:44 · 149 阅读 · 0 评论 -
PAT1043 Is It a Binary Search Tree(前序中序判断二叉搜索树/镜像求后序)
传送门 已知前序,并且因为二叉搜索树的特性,中序也确定,只需判断能不能建树,能就输出后序 思路类似于1027,多了一个镜像树的过程 版本一,照着y总写的,非常的简短风骚 #include <iostream> #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++) #define sca(x) s...原创 2020-04-23 21:14:16 · 196 阅读 · 0 评论 -
PAT1021 Deepest Root 最深的根(并查集+遍历树)
传送 给定N个点和N-1条边构成的无向图,若超过一个连通分量,输出连通分量的个数,否则输出能构成的树的最大深度 判断连通分量个数考虑并查集 因为数据很小,考虑暴力枚举每个点为根的情况的深度,取最大值。 用邻接表存储 #include <iostream> #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a...原创 2020-04-18 21:18:21 · 246 阅读 · 0 评论 -
PAT1043 Is It a Binary Search Tree 二叉搜索树
给定一个整数键值序列,判断这是否是对一棵二叉搜索树或其镜像进行前序遍历的结果,是的话要输出后序序列 在建二叉搜索树的同时建一颗镜像的二叉搜索树,再将原序列与两颗树的前序比对。 最开始交上去只有3分。。 百思不得其解..查了近两小时bug,最后发现是“YES“打成“Yes”,心态大崩 #include <iostream> #include<bits/stdc++.h...原创 2020-03-30 20:35:05 · 143 阅读 · 0 评论 -
PAT1004 Counting Leaves
传送门 给一颗树,求出每个层次下叶节点个数 跑一遍树遍历dfs #include <iostream> #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++) #define sca(x) scanf("%d",&x) #define sca2(x,y) scanf("%d%...原创 2020-03-29 19:35:16 · 127 阅读 · 0 评论 -
PAT1106 Lowest Price in Supply Chain
传送门 给一颗销售供应的树。在树根初货物价格为P,从树根每往子节点走一层,价格会上涨R%。求最低价格和最低价格叶节点个数 思路:最高价格其实=树的深度,进行带深度的遍历即可 #include <iostream> #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++) #define sc...原创 2020-03-28 20:52:51 · 128 阅读 · 0 评论 -
1094 The Largest Generation
传送门 给一颗树,求节点最多的深度和该层节点个数 #include <iostream> #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++) #define sca(x) scanf("%d",&x) #define sca2(x,y) scanf("%d%d",&...原创 2020-03-28 20:42:22 · 113 阅读 · 0 评论 -
PAT1090 Highest Price in Supply Chain
传送门 给一颗销售供应的树。在树根初货物价格为P,从树根每往子节点走一层,价格会上涨R%。求最高价格和最高价格叶节点个数 思路:最高价格其实=树的深度,进行带深度的遍历即可 与1079一样的做法 #include <iostream> #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++...原创 2020-03-28 20:22:10 · 131 阅读 · 0 评论 -
PAT1079 Total Sales of Supply Chain
传送门 给一颗销售供应的树。在树根初货物价格为P,从树根每往子节点走一层,价格会上涨R%。给出叶节点的货物量,求出价格之和。 思路:dfs树遍历。 #include <iostream> #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++) #define sca(x) scanf...原创 2020-03-28 19:51:57 · 130 阅读 · 0 评论 -
PAT1086 Tree Traversals Again
传送门 从栈中获得前序和中序,求后序。 与1020相似https://blog.youkuaiyun.com/kl782636177/article/details/105129754 #include <iostream> #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++) #define sc...原创 2020-03-27 21:24:55 · 174 阅读 · 0 评论 -
PAT 1102 Invert a Binary Tree(找根+翻转树+层序)
传送门 #include <iostream> #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++) #define sca(x) scanf("%d",&x) #define sca2(x,y) scanf("%d%d",&x,&y) #define scl(...原创 2020-03-27 20:25:23 · 170 阅读 · 0 评论 -
PAT1020 Tree Traversals(后序中序求层序)
已知后序和中序,求层次遍历 法一:标准建树+BFS版 #include <iostream> #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++) #define sca(x) scanf("%d",&x) #define sca2(x,y) scanf("%d%d",&x...原创 2020-03-26 22:16:51 · 174 阅读 · 0 评论 -
PAT1053 Path of Equal Weight(DFS路径)
传送门 给定一棵带权树,求根节点到叶节点等于给定数的带权路径,降序输出。 考虑在输入的时候进行降序排序 渣渣如我已经忘了dfs怎么用回溯存路径了。。 #include <iostream> #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<n;i++) #define sca(x) scanf(...原创 2020-03-27 20:17:06 · 181 阅读 · 0 评论