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

石灰土做击实检测网站怎么填企业管理咨询

石灰土做击实检测网站怎么填,企业管理咨询,中企动力有多少家分公司,怎么用手机自己做网站第一题: 原题链接:530. 二叉搜索树的最小绝对差 - 力扣(LeetCode) 思路: 使用中序遍历的方式:左中右。 定义一个pre节点来存放当前节点的前一个节点。 在中序的时候处理递归逻辑: 首先先向…

第一题:

原题链接:530. 二叉搜索树的最小绝对差 - 力扣(LeetCode)

思路:

使用中序遍历的方式:左中右。

定义一个pre节点来存放当前节点的前一个节点。

在中序的时候处理递归逻辑:

首先先向左遍历,

在中序的时候将当前节点和前一个节点的值相减取绝对值然后和res进行比较。然后pre更新为cur节点。

最后向右遍历。

代码如下:

/*** 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) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:int getMinimumDifference(TreeNode* root) {if(root == nullptr) return 0;dfs(root);return res;}
private:int res = INT_MAX;TreeNode* pre = nullptr;void dfs(TreeNode* cur){if(cur == nullptr) return;dfs(cur -> left);if(pre != nullptr){res = min(res, abs(cur -> val - pre -> val));}pre = cur;dfs(cur -> right);return;}
};

第二题:

原题链接:501. 二叉搜索树中的众数 - 力扣(LeetCode)

思路:

使用中序遍历的方式,左中右。

定义一个pre节点来存放当前节点的前一个节点。

先向左进行遍历。

在中的时候处理逻辑:

如果pre为空的话证明当前节点是左下角的那个元素,count记录为1;

如果pre的值和cur的值相同,count++;

如果pre和cur不相等count也为1;

然后将pre更新为cur。

如果count的值和maxcount的值相等的话就将cur的值存放在res中,

如果count>maxcount的值话,则需要将res中的值全部都清空,再把cur的值存放到res中。maxcount更新为count的值。

最后向右遍历。

代码如下:

/*** 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) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:vector<int> findMode(TreeNode* root) {if(root == nullptr) return {};dfs(root);return res;}
private:int count = 0, maxcount = 0; TreeNode* pre = nullptr;vector<int> res;void dfs(TreeNode* cur){if(cur == nullptr) return;dfs(cur -> left);if(pre == nullptr) count = 1;else if(pre -> val == cur -> val){count++;}else{count = 1;}pre = cur;if(count == maxcount) res.push_back(cur -> val);if(count > maxcount){maxcount = count;res.clear();res.push_back(cur -> val);}dfs(cur -> right);return;}
};

第三题:

原题链接:236. 二叉树的最近公共祖先 - 力扣(LeetCode)

思路:

递归的终止条件:

如果root == null || root == p || root == q,都返回root;

本题使用后序遍历的方式,遍历到最后然后向上返回结果。

新建一个left节点来接收向左递归的结果,

新建一个right节点来接收向右递归的结果;

中:

如果left为空right不为空则返回right;

如果left不为空right为空则返回left;

如果left和right都不为空则返回root;

以上都不是则返回null;

代码如下:

/*** 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:TreeNode* lowestCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q) {if(root == NULL) return NULL;if(root == p || root == q) return root;TreeNode* left = lowestCommonAncestor(root -> left, p, q);TreeNode* right = lowestCommonAncestor(root -> right, p, q);if(left == NULL && right != NULL) return right;if(left != NULL && right == NULL) return left;if(left != NULL && right != NULL) return root;return NULL;}
};

http://www.tj-hxxt.cn/news/32825.html

相关文章:

  • wordpress首页文字广告框架优化seo教程
  • 动漫制作专业介绍百度快速优化推广
  • 做食材的网站营销失败案例分析
  • 响应网站怎么做百度seo在线优化
  • 如何选择大良网站建设刷粉网站推广马上刷
  • 企业网站备案要钱嘛精准营销平台
  • 长沙网站快速排名提升行业关键词词库
  • 长沙小程序开发盐城seo营销
  • 做网站属于什么专业家庭优化大师免费下载
  • 优秀营销网站设计最新国内新闻50条简短
  • 邯郸网站建设优化排名百度客户端官网
  • 生成html网站地图推广关键词排名
  • 离开此网站系统可能不会保存您做的更改seo营销推广平台
  • 广州易网外贸网站建设jsurl中文转码
  • 如何开一家网站建设公司免费合作推广
  • 济南建网站最好的株洲seo快速排名
  • 长春电商公司排名杭州新站整站seo
  • 出入长沙今天最新通知seo文案范例
  • 群晖做自己的电影网站谷歌推广app
  • 火影忍者做网站的图片百度账户托管公司
  • 秦皇岛建设网站公司哪家好谷歌排名优化入门教程
  • 招聘网站费用怎么做分录今天济南刚刚发生的新闻
  • 私人诊所网站源码最近新闻热点
  • 做淘宝客网站 首选霍常亮优化工具箱下载
  • 精准营销案例名称及分析首页关键词优化价格
  • 免费建设网站制作云南网络推广seo代理公司
  • 古色古香 网站模板西安网页设计
  • 赞皇建站建设网站制作教程视频
  • 怎么做网站后台专注于品牌营销服务
  • 网站提现功能开发非企户百度推广