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

沈阳地区精神文明建设网站网络推广基础

沈阳地区精神文明建设网站,网络推广基础,手机优化应用是怎么回事,郑州制作网站电话133学习目标: 530.二叉搜索树的最小绝对差 501.二叉搜索树中的众数 236. 二叉树的最近公共祖先 学习内容: 530.二叉搜索树的最小绝对差 题目链接&&文章讲解 给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值…

学习目标:

  • 530.二叉搜索树的最小绝对差
  • 501.二叉搜索树中的众数
  • 236. 二叉树的最近公共祖先

学习内容:

530.二叉搜索树的最小绝对差

题目链接&&文章讲解
给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。

差值是一个正数,其数值等于两值之差的绝对值。

class Solution {//前一个节点值TreeNode pre;//结果值 初始化为整数最大值int result = Integer.MAX_VALUE;public int getMinimumDifference(TreeNode root) {if(root==null)return 0;traversal(root);return result;}public void traversal(TreeNode node){//终止条件:node == nullif(node == null) return;//左traversal(node.left);//中if(pre != null &&node.val - pre.val < result) {result =  node.val - pre.val;}pre = node;//右traversal(node.right);}
}

501.二叉搜索树中的众数

题目链接&&文章讲解
给你一个含重复值的二叉搜索树(BST)的根节点 root ,找出并返回 BST 中的所有 众数(即,出现频率最高的元素)。

如果树中有不止一个众数,可以按 任意顺序 返回。

假定 BST 满足如下定义:

结点左子树中所含节点的值 小于等于 当前节点的值
结点右子树中所含节点的值 大于等于 当前节点的值
左子树和右子树都是二叉搜索树

//普通二叉树
class Solution {public int[] findMode(TreeNode root) {Map<Integer,Integer> map = new HashMap<>();List<Integer> list = new ArrayList<>();if (root == null) return list.stream().mapToInt(Integer::intValue).toArray();// 获得频率 Maptraveral(root, map);List<Map.Entry<Integer, Integer>> mapList = map.entrySet().stream().sorted((c1, c2) -> c2.getValue().compareTo(c1.getValue())).collect(Collectors.toList());list.add(mapList.get(0).getKey());// 把频率最高的加入 listfor (int i = 1; i < mapList.size(); i++) {if (mapList.get(i).getValue() == mapList.get(i - 1).getValue()) {list.add(mapList.get(i).getKey());} else {break;}}return list.stream().mapToInt(Integer::intValue).toArray();}void traveral(TreeNode node, Map<Integer, Integer> map){if(node == null) return;map.put(node.val, map.getOrDefault(node.val, 0) + 1);traveral(node.left, map);traveral(node.right, map);}
}//二叉搜索树
class Solution {ArrayList<Integer> resList = new ArrayList<>();;int maxCount = 0;int count = 0;TreeNode pre = null;public int[] findMode(TreeNode root) {traversal(root);int[] res = new int[resList.size()];for (int i = 0; i < resList.size(); i++) {res[i] = resList.get(i);}return res;}public void traversal(TreeNode node){if(node == null) return;//左traversal(node.left);//中if(pre == null) count = 1;else if(pre.val == node.val) count++;else count = 1;pre = node;if(count == maxCount) resList.add(node.val);if(count > maxCount) {resList.clear();resList.add(node.val);maxCount = count;}//右traversal(node.right);}
}

236. 二叉树的最近公共祖先

题目链接&&文章讲解

给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。
最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”

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 root;else if(left == null && right != null) return right;else if(left != null && right == null) return left;else return null;}
}

http://www.yayakq.cn/news/153525/

相关文章:

  • iis默认网站删除google seo是什么
  • 层次结构分明的网站配色方案优秀的软文
  • 汕头建站模板上海建筑工程公司排行榜
  • 建设银行怎么在网站设置限额喀什seo排名
  • 南京做网站优化的企业排名next wordpress
  • 无锡专业网站推广国家企业信用信息公示网官网
  • 公司重名 做网站apache 搭建多个网站
  • 网站404页面制作免费html5播放器
  • 网站建设app开发合同蓝盟it外包
  • 忆唐网不做网站做品牌菏砖网站建设
  • 想学做网站整站优化seo公司哪家好
  • html5网站开发视频广州网络推广奋
  • 珠海舒讯网站建设musik wordpress视频
  • 网站建设的运营计划书动易网站安装子目录中
  • 合肥专业网站优化哪家好seo是搜索引擎优化吗
  • 上海网站制作培训班世界购物平台排行榜
  • 微网站用什么做的属于c2c的网站是
  • 微信设计网站建设wordpress主题图
  • 顺义手机网站设计下载百度地图2022最新版
  • 机关网站建设和运行情况汇报wordpress 流程插件
  • 学校部门网站建设情况汇报品牌建设的三大理论
  • 增城网站建设公司asp网站js悬浮窗怎么做
  • 网站版面布局结构图秦皇岛网站推广报价
  • 微信群投票网站怎么做网站建设推广页
  • 天津市住房和城乡建设厅网站wordpress搜索图标
  • 专门做t恤的网站网站建设业务开展方案
  • 安阳网站自然优化免费发外链平台
  • 海珠做网站公建筑公司网站起名
  • WordPress挂在虚拟站点社交网站源代码
  • 北京专业企业网站建设全国造价工程师管理系统官网