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

gofair做网站搜索引擎优化的方式

gofair做网站,搜索引擎优化的方式,用凡科做网站有自己的域名,wordpress如何禁止注册文章目录 144.二叉树的前序遍历145.二叉树的后序遍历94.二叉树的中序遍历102.二叉树的层序遍历107.二叉树的层次遍历倒序199.二叉树的右视图637.二叉树的层平均值429.N叉树的层序遍历515.在每个树行中找最大值116.填充每个节点的下一个右侧节点指针104.二叉树的最大深度111.二叉…

文章目录

  • 144.二叉树的前序遍历
  • 145.二叉树的后序遍历
  • 94.二叉树的中序遍历
  • 102.二叉树的层序遍历
  • 107.二叉树的层次遍历倒序
  • 199.二叉树的右视图
  • 637.二叉树的层平均值
  • 429.N叉树的层序遍历
  • 515.在每个树行中找最大值
  • 116.填充每个节点的下一个右侧节点指针
  • 104.二叉树的最大深度
  • 111.二叉树的最小深度

144.二叉树的前序遍历

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public List<Integer> preorderTraversal(TreeNode root) {List<Integer> res = new ArrayList<>();traversal(res,root);return res;}public void traversal(List<Integer> res ,TreeNode root){if(root == null){return;}res.add(root.val);traversal(res,root.left);traversal(res,root.right);}
}

145.二叉树的后序遍历

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public List<Integer> postorderTraversal(TreeNode root) {List<Integer> res = new ArrayList<>();traversal(res,root);return res;}public void traversal(List<Integer> list, TreeNode root){if(root == null){return;}traversal(list,root.left);traversal(list,root.right);list.add(root.val);}
}

94.二叉树的中序遍历

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public List<Integer> inorderTraversal(TreeNode root) {List<Integer> res = new ArrayList<>();traversal(res,root);return res;}   public void traversal(List<Integer> list,TreeNode root){if(root == null){return;}traversal(list,root.left);list.add(root.val);traversal(list,root.right);}
}

102.二叉树的层序遍历

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public List<List<Integer>> levelOrder(TreeNode root) {List<List<Integer>> res = new ArrayList<>();traversal(res,root,0);return res;}public void traversal(List<List<Integer>> list,TreeNode root, int deep){if(root == null){return;}if(list.size() < deep+1){list.add(new ArrayList<>());}list.get(deep).add(root.val);traversal(list,root.left,deep+1);traversal(list,root.right,deep+1);}
}

107.二叉树的层次遍历倒序

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public List<List<Integer>> levelOrderBottom(TreeNode root) {List<List<Integer>> res = new ArrayList<>();traversal(res,root,0);Collections.reverse(res);return res;}public void traversal(List<List<Integer>> list,TreeNode root,int deep){if(root == null){return;}if(list.size() < deep+1){list.add(new ArrayList<>());}list.get(deep).add(root.val);traversal(list,root.left,deep+1);traversal(list,root.right,deep+1);}
}

199.二叉树的右视图

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public List<Integer> rightSideView(TreeNode root) {List<List<Integer>> res = new ArrayList<>();traversal(res,root,0);List<Integer> result = new ArrayList<>();for(List<Integer> list:res){result.add(list.getLast());}return result;}public void traversal(List<List<Integer>> list,TreeNode root,int deep){if(root == null){return;}while(list.size() <deep+1){list.add(new ArrayList<>());}list.get(deep).add(root.val);traversal(list,root.left,deep+1);traversal(list,root.right,deep+1);}
}

637.二叉树的层平均值

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public List<Double> averageOfLevels(TreeNode root) {List<List<Integer>> rest = new ArrayList<>();List<Double> res = new ArrayList<>();traversal(rest,root,0);for(List<Integer> l :rest){res.add(l.stream().mapToInt(Integer::intValue).average().orElse(0));}return res;}public void traversal(List<List<Integer>> list,TreeNode root,int deep){if(root == null){return;}if(list.size() < deep+1){list.add(new ArrayList<>());}list.get(deep).add(root.val);traversal(list,root.left,deep+1);traversal(list,root.right,deep+1);}
}

429.N叉树的层序遍历


/*
// Definition for a Node.
class Node {public int val;public List<Node> children;public Node() {}public Node(int _val) {val = _val;}public Node(int _val, List<Node> _children) {val = _val;children = _children;}
};
*/
class Solution {public List<List<Integer>> levelOrder(Node root) {List<List<Integer>> res = new ArrayList<>();traversal(res,root,0);return res;}public void traversal(List<List<Integer>> list,Node root,int deep){if(root == null){return;}if(list.size() < deep+1){list.add(new ArrayList<>());}list.get(deep).add(root.val);for(Node node : root.children){traversal(list,node,deep+1);}}
}

515.在每个树行中找最大值

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public List<Integer> largestValues(TreeNode root) {List<List<Integer>> res = new ArrayList<>();traversal(res,root,0);List<Integer> result = new ArrayList<>();for(List<Integer> l : res){result.add(l.stream().max(Integer::compare).orElse(0));}return result;}public void traversal(List<List<Integer>> list, TreeNode root, int deep){if(root == null){return;}if(list.size() < deep+1){list.add(new ArrayList<>());}list.get(deep).add(root.val);traversal(list,root.left,deep+1);traversal(list,root.right,deep+1);}
}

116.填充每个节点的下一个右侧节点指针

/*
// Definition for a Node.
class Node {public int val;public Node left;public Node right;public Node next;public Node() {}public Node(int _val) {val = _val;}public Node(int _val, Node _left, Node _right, Node _next) {val = _val;left = _left;right = _right;next = _next;}
};
*/class Solution {public Node connect(Node root) {if(root == null){return root;}Queue<Node> nodeq = new LinkedList<>();nodeq.add(root);while(!nodeq.isEmpty()){int size = nodeq.size();for(int i = 0; i < size; i++){Node node = nodeq.poll();if(i < size - 1){node.next = nodeq.peek();}if(node.left != null){nodeq.add(node.left);}if(node.right != null){nodeq.add(node.right);}}}return root;}}

104.二叉树的最大深度

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public int maxDepth(TreeNode root) {if(root == null){return 0;}int leftH = maxDepth(root.left);int rightH = maxDepth(root.right);return Math.max(leftH,rightH) + 1;}
}

111.二叉树的最小深度

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public int minDepth(TreeNode root) {if(root == null){return 0;}int leftH = minDepth(root.left);int rightH = minDepth(root.right);if(leftH == 0 || rightH == 0){return Math.max(leftH,rightH) + 1;}return Math.min(leftH,rightH)+ 1;}
}
http://www.hrbkazy.com/news/8368.html

相关文章:

  • 网站接单平台怎样弄一个自己的平台
  • 门户网站建设教程软文内容
  • 英文网站建设公司 杭州活动软文模板
  • 深圳市市场监督管理局河南网站优化公司
  • 许昌那有做网站有没有免费的crm系统软件
  • 如何做做网站吸引人的软文
  • 已有域名怎么建设网站网站搭建一般要多少钱
  • 国外的有趣设计网站网络营销技巧培训班
  • 武汉网站优化推广百度竞价排名黑幕
  • python 自己做网站app代理推广合作
  • 做网站多少钱 注意什么新型营销方式
  • 上海企业网站推广网上宣传广告怎么做
  • 网站做前端友情链接交换软件
  • 做网站 怎么连到数据库网店代运营
  • 北京大兴网站建设公司咨询一个新手怎么做电商
  • 手机端网站优化怎么做官方推广平台
  • 布吉附近公司做网站建设多少钱东莞网站推广排名
  • wordpress 链接修改windows优化大师绿色版
  • 苏州工业园区两学一做教育网站合肥网络推广公司
  • 网站搜索功能怎么实现在线h5免费制作网站
  • 手机能建设网站吗抚顺网站seo
  • 承德哪里做网站seo好seo
  • 产品推广软文东莞seo计费
  • 网站开发测试工程师深圳推广优化公司
  • 开发一个网站要多久推广排名
  • 山东网站建设流程百度网站分析
  • 网站广告位怎么做国内ip地址 免费
  • 电脑iis做网站朋友圈信息流广告投放价格
  • 焦作网站建设设计怎样在百度上免费做广告
  • 乌海做网站的公司百度怎么注册自己的网站