二叉树
sorry_maker
博客只图一乐,主要是给我自己看的,不要轻信,有问题欢迎留言
展开
-
LeetCode113路径总和2递归 二叉树
问题描述代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: vector<vector<in原创 2020-09-26 17:20:55 · 93 阅读 · 0 评论 -
*leetcode257二叉树的所有路径递归
代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: vector<string> binary.原创 2020-09-26 16:58:32 · 77 阅读 · 0 评论 -
*LeetCode递归 二叉树404左叶子之和
问题描述代码实现/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: int sumOfLeftLeaves(原创 2020-09-26 16:46:27 · 150 阅读 · 0 评论 -
P1364 医院设置
问题描述思路本题用floyed算法求出一点到其余个点的最短路径,然后按照题目要求求最小值代码#include <iostream>#include <vector>#include <algorithm>using namespace std;int main(){ int n,x,y,num=0,res=1e9; cin>>n; vector <int> p(n+1); vector <原创 2020-09-12 21:56:52 · 993 阅读 · 0 评论 -
P5076 【深基16.例7】普通二叉树(简化版)
问题描述思路本题就是multiset(二叉线索平衡树)的应用主要应用两个函数 :lower_bound,upper_bound看完了有关set 和multiset的CSDN,这题就绝对没问题查询 x 数的排名排名,说白了就是排序之后的x的下标。我们只要用lower_bound方法,找到第一个x的位置。然后从begin开始往后遍历容器,只要达到这个位置,就输出当前下标即可。2.查询排名为 x 的数遍历容器,只要当前排名到达x,就输出当前值。(因为multiset容器无法进行随机访问原创 2020-09-12 19:49:21 · 387 阅读 · 0 评论 -
落谷二叉树根据前序遍历和中序遍历,输出后序遍历
问题描述思路如果在纸上来写这个题目,我们呢就会发现会有很多重复的,类似的步骤,这就可以利用递归,个人建议自己在纸上画出解题的过程,递归的条件和过程就会比较清楚代码#include <iostream>#include <string>using namespace std;string a,b;//a代表前序遍历,b代表中序遍历void houxu(int x,int y,int p,int q)//x到y表示前序遍历的范围,p到q表示中序遍历范围{ if原创 2020-09-11 11:18:03 · 437 阅读 · 0 评论 -
落谷二叉树淘汰赛
问题描述思路题解大佬的思路:将比赛的队伍分为2类,第一类就是前一半的参赛队伍,第二类则是后一半的参赛队伍,,最后的决赛总是在第一类和第二类的最强者中进行,所以只需要在两类中进行排序就行代码#include <iostream>#include <algorithm>#include <vector>#include <stdio.h>using namespace std;struct dui{ int num; int原创 2020-09-11 11:06:57 · 228 阅读 · 0 评论 -
*递归二叉树LeetCode左叶子之和
问题描述注意事项递归条件必须注意问题是求所有左叶子之和代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public:原创 2020-09-07 17:24:38 · 402 阅读 · 0 评论 -
递归二叉树LeetCode112路径总和
问题描述注意事项看清楚题目的意思,,是否存在根节点到叶子结点的路径,所以递归的循环终止条件是if(rootNULL) return false;if(root->valsum&&root->leftNULL&&root->rightNULL) return true;/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeN原创 2020-09-07 16:48:39 · 97 阅读 · 0 评论 -
二叉树递归 leetcode110平衡二叉树
问题描述代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: int len(TreeNode *a)原创 2020-09-07 16:37:22 · 66 阅读 · 0 评论 -
递归二叉树leetcode 完全二叉树的节点个数
问题描述代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: int countNodes(TreeNod原创 2020-09-07 16:15:56 · 108 阅读 · 0 评论 -
递归二叉树LeetCode 101.对称二叉树
问题描述代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution { bool check(TreeNode *a,TreeNod原创 2020-09-07 16:09:15 · 116 阅读 · 0 评论 -
递归二叉树 LeetCode 100相同的树
问题描述/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode(int x) : val(x), left(nullptr), right(nullptr)原创 2020-09-07 15:40:15 · 63 阅读 · 0 评论 -
递归二叉树leetcode226翻转二叉树
问题描述看到二叉树就用递归准没错代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution { TreeNode *t;publ原创 2020-09-07 15:33:47 · 76 阅读 · 0 评论 -
二叉树递归LeetCode111二叉树的最小深度
问题描述代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: int minDepth(TreeNode*原创 2020-09-07 14:46:36 · 85 阅读 · 0 评论