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

张北北京网站建设最新国际新闻 大事件

张北北京网站建设,最新国际新闻 大事件,电子商务网站模板html,belance设计网站题目: 给定一棵完全二叉树的头节点head,返回这棵树的节点个数。如果完全二叉树的节点数为N,请实现时间复杂度低于O(N)的解法。 方法(1):递归O(n)算法 int nodeNum(struct TreeNode* head) {if(NULL he…

 

题目:

给定一棵完全二叉树的头节点head,返回这棵树的节点个数。如果完全二叉树的节点数为N,请实现时间复杂度低于O(N)的解法。 

方法(1):递归O(n)算法

int nodeNum(struct TreeNode* head) {if(NULL == head){return 0;}return 1 + nodeNum(head->left) + nodeNum(head->right); }

方法(2):先计算出二叉树的高度(一直走左路法),如果二叉树的右子树的高度==二叉树高度减1的话,就说明左子树的满二叉树,可以根据公式pow(2,h-1)计算,在模拟递归右子树;否则说明右子树是满二叉树,模拟递归左子树,直到结点为空

/**
struct TreeNode {int val;struct TreeNode *left;struct TreeNode *right;TreeNode(int x) :val(x), left(NULL), right(NULL) {}
};
*/
class Solution {
public://计算完全二叉树的高度int height(struct TreeNode* head){int count=0;struct TreeNode* cur=head;while(cur)//一直走左边{count++;cur=cur->left;}return count;}int nodeNum(struct TreeNode* head) {//二叉树总高度struct TreeNode* cur=head;int h=height(head);int count=0;while(cur){//右子树高度==总树高度-1,则说明左子树的满二叉树,可以直接算if(height(cur->right)==h-1){count+=pow(2,h-1);//左子树节点数cur=cur->right;//模拟递归的看右子树(将右子树作为新树判断)}else//说明右子树是完全二叉树,可以直接算{count+=pow(2, h-2);cur=cur->left;//模拟递归左子树}h--;//每走一层,高度减一层}return count;}
};

 

http://www.lbrq.cn/news/2704483.html

相关文章:

  • 网站放自己服务器备案域名停靠
  • 上海做网站的企业长沙网络营销哪家平台专业
  • 杭州网站设计工作室企业门户网站的设计与实现
  • 济南网站建设联 系小七百度seo优化哪家好
  • 企业网站建设优化徐州网页关键词优化
  • 网站建设验收标准资源网站优化排名优化
  • 做设计开哪个素材网站的会员好高端企业建站公司
  • 合肥网站开发公司电话网络公司名字
  • 武汉企业网站各大网站收录入口
  • 房产资讯什么网站做的好网络营销毕业论文范文
  • 虚拟主机和网站空间最新的新闻 最新消息
  • 专注外贸建站百度应用市场下载安装
  • 哈尔滨网站建设多少钱定向推广
  • 旅游网站内容做多还是少今天刚刚的最新新闻
  • 网站建设定义写一篇软文多少钱
  • wordpress与iis7欢迎pc优化工具
  • 网站全屏弹出窗口企业自建网站
  • 抵扣发票在哪个网站做seo全称英文怎么说
  • 视频网站用php做seo网站培训班
  • 南昌网站建设设计磁力天堂最新版地址
  • 培训怎么样网页设计搜索引擎关键词优化方案
  • 德宏企业网站建设公司6网络搜索优化
  • 天元建设集团有限公司财务分析郑州seo排名公司
  • 网站设计与建设的公司欧洲站fba
  • 成都定制网站建设营销qq下载
  • 网站建设计划书查网站权重
  • 做基网站外贸seo
  • 个人网站设计风格杭州龙席网络seo
  • 网站的标题可以改吗b站引流推广网站
  • 烟台网站建设的方法有哪些百度授权代理商
  • Kubernetes-03:Service
  • Unity、C#常用的时间处理类
  • “生成式UI革命”:Tambo AI如何让你的应用“开口说话、动手搭界面” | 全面深剖、案例实践与未来展望
  • Java进阶学习之不可变集合
  • nvm install 14.21.3 时npm 无法下载和识别
  • 自动驾驶 HIL 测试:构建 “以假乱真” 的实时数据注入系统