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

新手做网站视频网页设计期末作品要求

新手做网站视频,网页设计期末作品要求,网站查备案密码,网站打开速度慢跟什么有关系力扣爆刷第142天之二叉树五连刷#xff08;构造树、搜索树#xff09; 文章目录 力扣爆刷第142天之二叉树五连刷#xff08;构造树、搜索树#xff09;一、106. 从中序与后序遍历序列构造二叉树二、654. 最大二叉树三、617. 合并二叉树四、700. 二叉搜索树中的搜索五、98. …力扣爆刷第142天之二叉树五连刷构造树、搜索树 文章目录 力扣爆刷第142天之二叉树五连刷构造树、搜索树一、106. 从中序与后序遍历序列构造二叉树二、654. 最大二叉树三、617. 合并二叉树四、700. 二叉搜索树中的搜索五、98. 验证二叉搜索树 一、106. 从中序与后序遍历序列构造二叉树 题目链接https://leetcode.cn/problems/construct-binary-tree-from-inorder-and-postorder-traversal/description/ 思路首先把中序遍历的key和value用map记录下来节省通过后序定位根节点的时间然后不断的用父节点划分左右子数组。 class Solution {MapInteger, Integer map new HashMap();public TreeNode buildTree(int[] inorder, int[] postorder) {for(int i 0; i inorder.length; i) {map.put(inorder[i], i);}return traverse(inorder, postorder, 0, inorder.length-1, 0, postorder.length-1);}TreeNode traverse(int[] inorder, int[] postorder, int leftIn, int rightIn, int leftPo, int rightPo) {if(leftIn rightIn) return null;int mid map.get(postorder[rightPo]);TreeNode root new TreeNode(postorder[rightPo]);root.left traverse(inorder, postorder, leftIn, mid-1, leftPo, leftPomid-leftIn-1);root.right traverse(inorder, postorder, mid1, rightIn, leftPomid-leftIn, rightPo-1);return root;}}二、654. 最大二叉树 题目链接https://leetcode.cn/problems/maximum-binary-tree/description/ 思路也是前序遍历构建二叉树在每一次指定区间的内通过比较获取最大值然后通过最大值划分左右子数组。 class Solution {public TreeNode constructMaximumBinaryTree(int[] nums) {return buildTree(nums, 0, nums.length-1);}TreeNode buildTree(int[] nums, int left, int right) {if(left right) return null;int max nums[left], mid left;for(int i left; i right; i) {if(nums[i] max) {max nums[i];mid i;}}TreeNode root new TreeNode(max);root.left buildTree(nums, left, mid-1);root.right buildTree(nums, mid1, right);return root;} }三、617. 合并二叉树 题目链接https://leetcode.cn/problems/merge-two-binary-trees/description/ 思路合并二叉树其实就是遍历其中一棵树然后把另外一颗树连接到这棵树上。 class Solution {public TreeNode mergeTrees(TreeNode root1, TreeNode root2) {if(root1 null root2 null) {return null;}if(root1 null) return root2;if(root2 null) return root1;root1.val root2.val;root1.left mergeTrees(root1.left, root2.left);root1.right mergeTrees(root1.right, root2.right);return root1;}}四、700. 二叉搜索树中的搜索 题目链接https://leetcode.cn/problems/search-in-a-binary-search-tree/description/ 思路利用二叉搜索树的特性从上往下进行搜索相等返回小于去左子树大于去右子树。 class Solution {public TreeNode searchBST(TreeNode root, int val) {if(root null) return null;if(root.val val) {return root;}else if(root.val val) {return searchBST(root.left, val);}else{return searchBST(root.right, val);}}}五、98. 验证二叉搜索树 题目链接https://leetcode.cn/problems/validate-binary-search-tree/description/ 思路要想验证是不是二叉搜索树直接利用二叉搜索树的特性中序单调遍历递增只要非单调递增即不是。 class Solution {boolean flag true;TreeNode p null;public boolean isValidBST(TreeNode root) {traverse(root);return flag;}void traverse(TreeNode root) {if(root null) return ;traverse(root.left);if(p ! null) {if(p.val root.val) {flag false;return ;}}p root;traverse(root.right);} }
http://www.w-s-a.com/news/830475/

相关文章:

  • 做网站用户充值提现郑州高端模板建站
  • 运城做网站方式方法网站改版完成
  • 上海建设网站制作东西湖建设局网站
  • 建设购物网站课程设计建设部领导干部官方网站
  • 沈阳企业制作网站北京两学一做网站
  • 郑州做营销型网站手机网站建设多少钱一个
  • 小说类网站程序外贸商城 wordpress
  • 喀什百度做网站多少钱wordpress 用户介绍
  • 专门做任务的网站手机端网站重构
  • 深圳专业设计网站公司国际网站建设经验
  • 网站产品页排名怎么做网站备案起名要求
  • 成都企业网站建设及公司ppt生活分类信息网站大全
  • 免费企业网站源码下载学服装设计需要什么条件
  • 淘宝网站开发方式深圳平面设计公司排名榜
  • 品牌网站建设收费情况登陆页面模板
  • 十大免费cms建站系统介绍科技网站欣赏
  • 自学做网站需要多久semir是什么品牌
  • 南通网站搜索引擎优化网站首页seo关键词布局
  • 东莞市国外网站建设多少钱wordpress 多媒体插件
  • c2c商城网站建设公司做水果生意去哪个网站
  • 做网站服务器有哪些电子商务网站建立
  • 网站开发的具体流程原材料价格查询网站
  • 深圳响应式网站建设深圳网站建设定制开发 超凡科技
  • 网站建设报价怎么差别那么大wordpress产品属性搭配
  • 高校网站建设情况报告范文pc建站网站
  • 做网站美工要学什么广东省建设厅网站首页
  • 深圳网站设计十年乐云seo网站建设 竞赛 方案
  • 新乡移动网站建设wordpress输出某一分类的文章
  • 花店网站开发设计的项目结构重庆网站建设培训班
  • 做网站的技术体系投资者互动平台官网