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

河北网站建设与制作建设宁波市分行的互联网网站

河北网站建设与制作,建设宁波市分行的互联网网站,租赁模板建站 网站的名称归属,python如何创建wordpress完全二叉树的节点个数 你一棵 完全二叉树 的根节点 root #xff0c;求出该树的节点个数。 完全二叉树 的定义如下#xff1a;在完全二叉树中#xff0c;除了最底层节点可能没填满外#xff0c;其余每层节点数都达到最大值#xff0c;并且最下面一层的节点都集中在该层最…完全二叉树的节点个数 你一棵 完全二叉树 的根节点 root 求出该树的节点个数。 完全二叉树 的定义如下在完全二叉树中除了最底层节点可能没填满外其余每层节点数都达到最大值并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层则该层包含 1~ 2h 个节点。 示例 1 输入 root [1,2,3,4,5,6] 输出 6 解题思路 树的高度 计算树的高度可以在 O(log n) 时间内完成通过沿着左子树一直走到底。 完全二叉树的性质 对于完全二叉树如果左右子树的高度相同那么左子树一定是满二叉树可以直接计算其节点数如果左右子树的高度不同那么右子树一定是满二叉树。 递归计算 根据左右子树的高度关系递归地计算左右子树的节点数直到叶节点。 Java实现 public class CountNodes {public static class TreeNode {int val;TreeNode left;TreeNode right;TreeNode(int x) { val x; }}/** 二叉树的节点数 */public int countNodes(TreeNode root) {if (root null) {return 0;}int leftDepth computeDepth(root.left);int rightDepth computeDepth(root.right);if (leftDepth rightDepth) {// 左子树是满二叉树return (1 leftDepth) countNodes(root.right);} else {// 右子树是满二叉树return (1 rightDepth) countNodes(root.left);}}/** 二叉树的深度 */private int computeDepth(TreeNode node) {int depth 0;while (node ! null) {node node.left;depth;}return depth;}public static void main(String[] args) {CountNodes countNodes new CountNodes();// 构建示例完全二叉树TreeNode root new TreeNode(1);root.left new TreeNode(2);root.right new TreeNode(3);root.left.left new TreeNode(4);root.left.right new TreeNode(5);root.right.left new TreeNode(6);// 计算完全二叉树的节点个数int result countNodes.countNodes(root);System.out.println(Number of nodes: result); // 输出: 6} } 时间空间复杂度 时间复杂度O(log n * log n)每次递归调用都减少一半节点递归的次数logn且需要计算树的高度logn。空间复杂度O(log n)递归栈的深度等于树的高度。
http://www.w-s-a.com/news/505407/

相关文章:

  • python做网站是不是特别慢百度推广基木鱼
  • 卖网站链接东营住房和城乡建设信息网
  • 网站后台如何上传ico图标单位建设网站需要的材料
  • 如何建淘客网站郑州做网站最好的公司
  • 连锁酒店网站方案o2o网站建设方案
  • 功能型网站响应式网站原理
  • 聊城建设网站骨干校 建设网站
  • 网站建设与管理是干嘛的中国新闻社是什么单位
  • 帮别人做视频剪辑的网站传业做微采商城网站
  • 设计一个网站开发方案宣传片制作企业
  • 新网站收录多少关键词免费一键网站
  • 网页制作与网站建设 在线作业手表网站制作照片
  • 电商网站开发技术与维护重庆建筑工程交易信息网
  • 人和马做的网站线上营销推广方式
  • 青海教育厅门户网站有赞商城
  • 网站建设多语种自动翻译插件wordpress谷歌翻译插件
  • 泰安高级网站建设推广wordpress教程 好看
  • 我自己的网站怎么做关键词优化泰安网站建设dxkjw
  • 平面设计做画册用网站泰州seo平台
  • 申请一个域名后怎么做网站evernote wordpress
  • 网站左侧导航栏设计网站开发后台数据怎么来
  • 临西做网站报价网站建设需要写语句吗
  • 建设网站网站首页购物网站开发代码
  • 淘宝客怎么建立网站网站360优化
  • 安徽建海建设工程有限公司网站网站空间和域名价格
  • 农产品网站建设策划哪里有做枪网站的
  • 更改各网站企业信息怎么做张家港企业网站制作
  • 郑州网站建设咨询银川做网站哪家好
  • 微信网站 微信支付合肥seo排名收费
  • 织梦做的网站如何上线广东省广州市番禺区南村镇