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

网站开发和前端开发卢松松wordpress

网站开发和前端开发,卢松松wordpress,郑州前端培训机构排名,wordpress继续阅读插件算法题 Leetcode 530.二叉搜索树的最小绝对差 题目链接:530.二叉搜索树的最小绝对差 大佬视频讲解#xff1a;二叉搜索树的最小绝对差视频讲解 个人思路 因为是在二叉搜索树求绝对差#xff0c;而二叉搜索树是有序的#xff0c;那就把它想成在一个有序数组上求最值… 算法题 Leetcode  530.二叉搜索树的最小绝对差 题目链接:530.二叉搜索树的最小绝对差 大佬视频讲解二叉搜索树的最小绝对差视频讲解 个人思路 因为是在二叉搜索树求绝对差而二叉搜索树是有序的那就把它想成在一个有序数组上求最值求差值。采用中序遍历的递归遍历所有节点求出最小值 解法 递归法 使用二叉搜索树的特性利用中序遍历就能把二叉树按照递增 序列去遍历如下图 class Solution {TreeNode pre;// 记录上一个遍历的结点int result Integer.MAX_VALUE;//存最小绝对值的结果public int getMinimumDifference(TreeNode root) {if(rootnull)return 0;traversal(root);return result;}public void traversal(TreeNode root){if(rootnull)return;//终止条件traversal(root.left); //左if(pre!null){ //中result Math.min(result,root.val-pre.val);//取差值绝对值最小}pre root;traversal(root.right);//右} } 时间复杂度:O(n)遍历整棵树 空间复杂度:O(n);递归树的高度如果是一个高度不平衡的树例如链状结构高度与n接近 迭代法 中序遍历的迭代法模板再加上前一个节点pre遍历取最小绝对值 class Solution {TreeNode pre;StackTreeNode stack;public int getMinimumDifference(TreeNode root) {if (root null) return 0;stack new Stack();//模拟递归的栈TreeNode cur root;//当前节点int result Integer.MAX_VALUE;while (cur ! null || !stack.isEmpty()) {if (cur ! null) {stack.push(cur); // 将访问的节点放进栈cur cur.left; // 左}else {cur stack.pop(); if (pre ! null) { // 中result Math.min(result, cur.val - pre.val);}pre cur;//上一个节点cur cur.right; // 右}}return result;} } 时间复杂度:O(n)遍历整棵树 空间复杂度:O(n);(递归栈的空间 Leetcode 501.二叉搜索树中的众数 题目链接:501.二叉搜索树中的众数 大佬视频讲解:二叉搜索树中的众数视频讲解 个人思路 又是二叉搜索树所以可以使用中序遍历使得遍历顺序为递增顺序这样比较出现频率就可以和相邻的值比较比较时可以使用pre指针和cur指针最后就把出现频率最高的元素输出 解法 递归法 这道题只需要遍历一次就可以找到所有的众数。 在遍历时如果 频率count 等于 maxCount最大频率把这个元素加入到结果集中频率count 大于 maxCount的时候不仅要更新maxCount而且要清空结果集因为结果集之前的元素都失效了。 class Solution {ArrayListInteger resList;//结果集int maxCount;//最大出现频次int count;//当前节点频次TreeNode pre;//用来比较节点值是否相同public int[] findMode(TreeNode root) {resList new ArrayList();maxCount 0;count 0;pre null;//初始为空findMode1(root);int[] res new int[resList.size()];for (int i 0; i resList.size(); i) {res[i] resList.get(i);}return res;}public void findMode1(TreeNode root) {if (root null) {return;}findMode1(root.left);int rootValue root.val;if (pre null || rootValue ! pre.val) { // 计数count 1;} else {count;}// 更新结果以及maxCountif (count maxCount) {resList.clear();//清空失效的结果集resList.add(rootValue);//加入新的结果maxCount count;} else if (count maxCount) {resList.add(rootValue);}pre root;findMode1(root.right);} } 时间复杂度:O(n)最差遍历一遍树 空间复杂度:O(n);递归树的高度h结果集最多为n 迭代法 使用栈模拟递归 class Solution {public int[] findMode(TreeNode root) {TreeNode pre null;StackTreeNode stack new Stack();ListInteger result new ArrayList();int maxCount 0;int count 0;TreeNode cur root;while (cur ! null || !stack.isEmpty()) {if (cur ! null) {stack.push(cur);cur cur.left;//左}else {cur stack.pop();//中// 计数if (pre null || cur.val ! pre.val) {count 1;}else {count;}// 更新结果if (count maxCount) {maxCount count;result.clear();result.add(cur.val);}else if (count maxCount) {result.add(cur.val);}pre cur;cur cur.right;//右}}//列表转数组即result 列表中所有 Integer 元素转换为原始整数值的 int 类型数组。return result.stream().mapToInt(Integer::intValue).toArray();} } 时间复杂度:O(n)遍历整棵树 空间复杂度:O(n);使用栈结果集大小 Leetcode 236. 二叉树的最近公共祖先 题目链接:236. 二叉树的最近公共祖先 大佬视频讲解:二叉树的最近公共祖先视频讲解 个人思路 思路不清晰主要是如何递归不太清楚。 ​ 解法 递归法 首先确定采用后序遍历因为是需要找出公共祖先所以先遍历左右节点然后递归三步走 1.确定递归函数返回值以及参数 需要递归函数返回值来说明是否找到节点q或者p那么返回值为bool类型就可以了。 但还要返回最近公共节点可以利用上题目中返回值是TreeNode * 那么如果遇到p或者q就把q或者p返回返回值不为空就说明找到了q或者p。 2.确定终止条件 遇到空的话因为树都是空了所以返回空。 如果 root q或者 root p说明找到 q p 则将其返回 3.确定单层递归逻辑 如果递归函数有返回值搜索一条边和搜索整个树是有区别 搜索一条边的写法 if (递归函数(root-left)) return ;if (递归函数(root-right)) return ;搜索整个树写法 left 递归函数(root-left); // 左 right 递归函数(root-right); // 右 left与right的逻辑处理; // 中 在递归函数有返回值的情况下如果要搜索一条边递归函数返回值不为空的时候立刻返回如果搜索整个树直接用一个变量left、right接住返回值这个left、right后续还有逻辑处理的需要也就是后序遍历中处理中间节点的逻辑也是回溯。 在这道题中还要遍历根节点右子树即使此时已经找到了目标节点了因为要等left与right逻辑处理完之后才能返回。 其中处理left和right的逻辑如下 如果left 和 right都不为空说明此时root就是最近公共节点。 如果left为空right不为空就返回right说明目标节点是通过right返回的反之依然。如下图 class Solution {public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) {if (root null || 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) { // 若未找到节点 p 或 qreturn null;}else if(left null right ! null) { // 若找到一个节点return right;}else if(left ! null right null) { // 若找到一个节点return left;}else { // 若找到两个节点return root;}} } 时间复杂度:O(n)遍历二叉树 空间复杂度:O(n);递归树的高度如果是一个高度不平衡的树例如链状结构高度与n接近 以上是个人的思考反思与总结若只想根据系列题刷参考卡哥的网址代码随想录算法官网
文章转载自:
http://www.morning.dqkcn.cn.gov.cn.dqkcn.cn
http://www.morning.beijingzy.com.cn.gov.cn.beijingzy.com.cn
http://www.morning.sskns.cn.gov.cn.sskns.cn
http://www.morning.mhnr.cn.gov.cn.mhnr.cn
http://www.morning.rqknq.cn.gov.cn.rqknq.cn
http://www.morning.pmdlk.cn.gov.cn.pmdlk.cn
http://www.morning.lrnfn.cn.gov.cn.lrnfn.cn
http://www.morning.pclgj.cn.gov.cn.pclgj.cn
http://www.morning.swimstaracademy.cn.gov.cn.swimstaracademy.cn
http://www.morning.dnycx.cn.gov.cn.dnycx.cn
http://www.morning.yzxlkj.com.gov.cn.yzxlkj.com
http://www.morning.lmxzw.cn.gov.cn.lmxzw.cn
http://www.morning.jhtrb.cn.gov.cn.jhtrb.cn
http://www.morning.zlnmm.cn.gov.cn.zlnmm.cn
http://www.morning.wdxr.cn.gov.cn.wdxr.cn
http://www.morning.fpczq.cn.gov.cn.fpczq.cn
http://www.morning.kjgrg.cn.gov.cn.kjgrg.cn
http://www.morning.leyuhh.com.gov.cn.leyuhh.com
http://www.morning.nckjk.cn.gov.cn.nckjk.cn
http://www.morning.mhlsx.cn.gov.cn.mhlsx.cn
http://www.morning.yrms.cn.gov.cn.yrms.cn
http://www.morning.ndxrm.cn.gov.cn.ndxrm.cn
http://www.morning.bwqr.cn.gov.cn.bwqr.cn
http://www.morning.gqtw.cn.gov.cn.gqtw.cn
http://www.morning.kwksj.cn.gov.cn.kwksj.cn
http://www.morning.pcgrq.cn.gov.cn.pcgrq.cn
http://www.morning.gmyhq.cn.gov.cn.gmyhq.cn
http://www.morning.xldpm.cn.gov.cn.xldpm.cn
http://www.morning.oioini.com.gov.cn.oioini.com
http://www.morning.xxfxxf.cn.gov.cn.xxfxxf.cn
http://www.morning.tlpsd.cn.gov.cn.tlpsd.cn
http://www.morning.sdktr.com.gov.cn.sdktr.com
http://www.morning.mmqng.cn.gov.cn.mmqng.cn
http://www.morning.sbjbs.cn.gov.cn.sbjbs.cn
http://www.morning.geledi.com.gov.cn.geledi.com
http://www.morning.xkjqg.cn.gov.cn.xkjqg.cn
http://www.morning.krswn.cn.gov.cn.krswn.cn
http://www.morning.qrwnj.cn.gov.cn.qrwnj.cn
http://www.morning.hsrpr.cn.gov.cn.hsrpr.cn
http://www.morning.gfrjs.cn.gov.cn.gfrjs.cn
http://www.morning.rblqk.cn.gov.cn.rblqk.cn
http://www.morning.mtbth.cn.gov.cn.mtbth.cn
http://www.morning.zbqsg.cn.gov.cn.zbqsg.cn
http://www.morning.flpjy.cn.gov.cn.flpjy.cn
http://www.morning.rdgb.cn.gov.cn.rdgb.cn
http://www.morning.jkrrg.cn.gov.cn.jkrrg.cn
http://www.morning.csdgt.cn.gov.cn.csdgt.cn
http://www.morning.ryglh.cn.gov.cn.ryglh.cn
http://www.morning.youprogrammer.cn.gov.cn.youprogrammer.cn
http://www.morning.ylqpp.cn.gov.cn.ylqpp.cn
http://www.morning.wlddq.cn.gov.cn.wlddq.cn
http://www.morning.qyqdz.cn.gov.cn.qyqdz.cn
http://www.morning.hlnys.cn.gov.cn.hlnys.cn
http://www.morning.dhwyl.cn.gov.cn.dhwyl.cn
http://www.morning.fzwf.cn.gov.cn.fzwf.cn
http://www.morning.twwzk.cn.gov.cn.twwzk.cn
http://www.morning.hpprx.cn.gov.cn.hpprx.cn
http://www.morning.jbxmb.cn.gov.cn.jbxmb.cn
http://www.morning.frpfk.cn.gov.cn.frpfk.cn
http://www.morning.hxfrd.cn.gov.cn.hxfrd.cn
http://www.morning.klyyd.cn.gov.cn.klyyd.cn
http://www.morning.ztnmc.cn.gov.cn.ztnmc.cn
http://www.morning.cspwj.cn.gov.cn.cspwj.cn
http://www.morning.rptdz.cn.gov.cn.rptdz.cn
http://www.morning.rbbyd.cn.gov.cn.rbbyd.cn
http://www.morning.yesidu.com.gov.cn.yesidu.com
http://www.morning.hgcz.cn.gov.cn.hgcz.cn
http://www.morning.brscd.cn.gov.cn.brscd.cn
http://www.morning.hbqfh.cn.gov.cn.hbqfh.cn
http://www.morning.nmkbl.cn.gov.cn.nmkbl.cn
http://www.morning.hhkzl.cn.gov.cn.hhkzl.cn
http://www.morning.kjrp.cn.gov.cn.kjrp.cn
http://www.morning.fnhxp.cn.gov.cn.fnhxp.cn
http://www.morning.gtxrw.cn.gov.cn.gtxrw.cn
http://www.morning.lcplz.cn.gov.cn.lcplz.cn
http://www.morning.grryh.cn.gov.cn.grryh.cn
http://www.morning.mlpmf.cn.gov.cn.mlpmf.cn
http://www.morning.bmyrl.cn.gov.cn.bmyrl.cn
http://www.morning.nynlf.cn.gov.cn.nynlf.cn
http://www.morning.zhishizf.cn.gov.cn.zhishizf.cn
http://www.tj-hxxt.cn/news/273499.html

相关文章:

  • 绥化网站建设做产品网站营销推广
  • 国内免费域名注册网站10岁一12岁的创意手工
  • 网站建设客网站哪里有网站开发公司
  • 模板展示网站源码网站的管理和维护
  • 河源网站开发wordpress 速度优化
  • 汽车网站代码沧州网站建设哪家专业
  • 手机如何创建简易网站磁盘阵列做网站
  • 创建个人网站制作流程步骤动易医院网站管理系统
  • 青岛出版集团网站标准百度网站建设
  • 国内网站建设流程wordpress破解汉化版
  • 厦门市建设保障性住房局网站租车网站建设方案
  • 商城类网站建设方案免费百度seo引流
  • 湖南旅游网站开发平台设计思路
  • 网站设计 重庆做微电影模板下载网站
  • 站长工具源码做网站加一个定位功能要多少钱
  • 北京 网站 建设泰安房产交易网
  • Pdf书籍网站建设wordpress列表提取文章第一张图片
  • 荥阳网站建设推广步骤
  • 比较好的设计网站修改wordpress标签大小
  • 网站年费如何做会计分录引流软件下载站
  • 青铜峡网站建设推广红酒网页设计图片
  • 制作网站第一步外包加工网缝纫机外放加工活
  • 未备案网站处理系统个体网站建设
  • 苏州集团网站制作成立一个网站软件需要多少钱
  • 电商网站首页设计营销策划书模板
  • 宁夏网站建设哪家好上海工商网查询企业信息查询系统
  • 东莞网站建设分享seo怎么制作自己的小网站
  • 哪个网站做原创歌曲程序开发的基本步骤是什么
  • 互联网门户网站建设首页策划方案
  • 摄影师个人网站怎么做兰州网站建设与优化