当前位置: 首页 > wzjs >正文

大岭山镇做网站建站重庆

大岭山镇做网站,建站重庆,建一个资源网站赚钱吗,做网站 超速云⭐️个人主页:小羊 ⭐️所属专栏:LeetCode 热题 100 很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~ 目录 二叉树的中序遍历二叉树的最大深度翻转二叉树对称二叉树二叉树的直径二叉树的层序遍历将有序数组转换为二叉搜索树验…
头像
⭐️个人主页:@小羊
⭐️所属专栏:LeetCode 热题 100
很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~

动图描述

目录

    • 二叉树的中序遍历
    • 二叉树的最大深度
    • 翻转二叉树
    • 对称二叉树
    • 二叉树的直径
    • 二叉树的层序遍历
    • 将有序数组转换为二叉搜索树
    • 验证二叉搜索树
    • 二叉搜索树中第 K 小的元素


二叉树的中序遍历

  • 二叉树的中序遍历

在这里插入图片描述

class Solution {vector<int> res;
public:vector<int> inorderTraversal(TreeNode* root) {dfs(root);return res;}void dfs(TreeNode* root){if (root == nullptr) return;dfs(root->left);res.push_back(root->val);dfs(root->right);}
};

二叉树的最大深度

  • 二叉树的最大深度

在这里插入图片描述

class Solution {
public:int maxDepth(TreeNode* root) {if (root == nullptr) return 0;int left = maxDepth(root->left);int right = maxDepth(root->right);return left > right ? left + 1 : right + 1;}
};

翻转二叉树

  • 翻转二叉树

在这里插入图片描述

class Solution {
public:TreeNode* invertTree(TreeNode* root) {if (root == nullptr) return nullptr;TreeNode *left = invertTree(root->left);TreeNode *right = invertTree(root->right);root->left = right;root->right = left;return root;}
};

对称二叉树

  • 对称二叉树

在这里插入图片描述

class Solution {
public:bool isSymmetric(TreeNode* root) {return dfs(root->left, root->right);}bool dfs(TreeNode* left, TreeNode* right){if (left && right){if (left->val != right->val) return false;return dfs(left->left, right->right) && dfs(left->right, right->left);}else if (left != right) return false;else return true;}
};

二叉树的直径

  • 二叉树的直径

在这里插入图片描述

class Solution {int depth;
public:int diameterOfBinaryTree(TreeNode* root) {dfs(root);return depth - 1;}int dfs(TreeNode* root){if (root == nullptr) return 0;int left = dfs(root->left);int right = dfs(root->right);depth = max(depth, left + right + 1);return max(left, right) + 1;}
};

二叉树的层序遍历

  • 二叉树的层序遍历

在这里插入图片描述

class Solution {
public:vector<vector<int>> levelOrder(TreeNode* root) {vector<vector<int>> res;queue<TreeNode*> q;if (root == nullptr) return res;q.push(root);while (q.size()){int sz = q.size();vector<int> tmp;while (sz--){TreeNode *node = q.front();tmp.push_back(node->val);q.pop();if (node->left) q.push(node->left);if (node->right) q.push(node->right);}res.push_back(tmp);}return res;}
};

将有序数组转换为二叉搜索树

  • 将有序数组转换为二叉搜索树

在这里插入图片描述

class Solution {
public:TreeNode* sortedArrayToBST(vector<int>& nums) {return dfs(nums, 0, nums.size() - 1);}TreeNode* dfs(vector<int>& nums, int l, int r){if (l > r) return nullptr;int mid = l + (r - l) / 2;TreeNode* node = new TreeNode(nums[mid]);node->left = dfs(nums, l, mid - 1);node->right = dfs(nums, mid + 1, r);return node;}
};

验证二叉搜索树

  • 验证二叉搜索树

在这里插入图片描述

递归遍历。

class Solution {
public:bool isValidBST(TreeNode* root) {return dfs(root, LONG_MIN, LONG_MAX);}bool dfs(TreeNode* root, long min_val, long max_val){if (root == nullptr) return true;if (root->val <= min_val || root->val >= max_val) return false;return dfs(root->left, min_val, root->val) && dfs(root->right, root->val, max_val);}
};

前序遍历。

class Solution {long prev = LONG_MIN;
public:bool isValidBST(TreeNode* root) {if (root == nullptr) return true;if (isValidBST(root->left) == false) return false;if (root->val <= prev) return false;prev = root->val; return isValidBST(root->right);}
};

二叉搜索树中第 K 小的元素

  • 二叉搜索树中第 K 小的元素

在这里插入图片描述

class Solution {int res, cnt;
public:int kthSmallest(TreeNode* root, int k) {cnt = k;dfs(root);return res;}void dfs(TreeNode* root){if (root == nullptr) return;dfs(root->left);if (--cnt == 0) {res = root->val;return;}dfs(root->right);}
};





本篇文章的分享就到这里了,如果您觉得在本文有所收获,还请留下您的三连支持哦~

头像
http://www.dtcms.com/wzjs/574893.html

相关文章:

  • 网站建设什么原因最主要国际展览中心有什么展览
  • 做汤的网站有哪些建设一个大型网站大概费用
  • 怎么样创办一个网站站酷魔方网站建设中
  • 怎么建网站视频网站建设运营思路
  • 重庆网站到首页排名吴中区建设局招标网站
  • 网站设计师接单贵州网站制作品牌公司
  • 网站设计包括哪些步骤免费大数据查询平台
  • 网站经典设计evernote wordpress
  • 西安网站建设有限公司免费网站空间服务器
  • 宁波网站建设推广wordpress文章页面修改
  • 军队营房基础建设网站做图片的网站有哪些
  • 网站制作的公司有哪些the7 wordpress 下载
  • 百度医疗网站建设浙江省网站集约化建设通知
  • 上海平台网站建设哪家有网站页面设计公司
  • app网站开发asp 网站 源码
  • 图展网站源码网络建设与维护是什么工作
  • 建设网站教程视频有哪些可以做网站的平台
  • 网站介绍视频怎么做关于建设公司网站的建议
  • 企业做网站价钱小程序官方示例
  • 软文网站备案如何查询河北新亚建设集团网站
  • 地和网站建设wordpress 常用插件
  • ppt做的好的网站有哪些内容做网站要主机还是服务器
  • 网站开发基础知识试题网站建设文化平台
  • 高端网站开发哪家好泉州做网站优化
  • 做网站 能挣钱吗优秀个人网站设计欣赏
  • 个人网站备案需要盖章吗软件开发工具都有哪些
  • 网站源码 正在建设中北京建设信源网站 怎么打不开
  • 广西网站建设价格wordpress 如何生成 htlm
  • 顺的网站建设效果wordpress 分类名称
  • 网站栏目英文网站的优化分析