完全二叉树的节点个数 C++ 简单问题

完全二叉树 的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层,则该层包含 1~ 2h 个节点。

示例 1:

输入:root = [1,2,3,4,5,6]
输出:6

示例 2:

输入:root = []
输出:0

示例 3:

输入:root = [1]
输出:1

class Solution {
public:int countNodes(TreeNode* root) {if(!root){return 0;            }return countNodes(root->left)+countNodes(root->right)+1;}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/54976.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于微信小程序的智慧社区的设计与实现

博主介绍: ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台…

如何在 Flutter 中实现可拖动的底部弹出框

在 Flutter 开发中,底部弹出框(Bottom Sheet)是一种常见的 UI 组件,通常用于显示一些额外的操作选项或详细信息。在这篇文章中,我将介绍一个自定义的 DragBottomSheetWidget 组件,它不仅支持手势拖动关闭&a…

[leetcode]516_最长回文子序列

给你一个字符串 s ,找出其中最长的回文子序列,并返回该序列的长度。 子序列定义为:不改变剩余字符顺序的情况下,删除某些字符或者不删除任何字符形成的一个序列。示例 1: 输入:s "bbbab" 输出&a…

使用 PowerShell 命令更改 RDP 远程桌面端口(无需修改防火墙设置)

节选自原文:Windows远程桌面一站式指南 | BOBO Blog 原文目录 什么是RDP开启远程桌面 检查系统版本启用远程桌面连接Windows 在Windows电脑上在MAC电脑上在Android或iOS移动设备上主机名连接 自定义电脑名通过主机名远程桌面使用Hosts文件自定义远程主…

LeetCode 427. 建立四叉树

LeetCode 427. 建立四叉树 (题干略) """ # Definition for a QuadTree node. class Node:def __init__(self, val, isLeaf, topLeft, topRight, bottomLeft, bottomRight):self.val valself.isLeaf isLeafself.topLeft topLeftself.t…

进阶美颜功能技术开发方案:探索视频美颜SDK

视频美颜SDK(SoftwareDevelopmentKit)作为提升视频质量的重要工具,越来越多地被开发者关注与应用。接下俩,笔者将深入探讨进阶美颜功能的技术开发方案,助力开发者更好地利用视频美颜SDK。 一、视频美颜SDK的核心功能 …

HarmonyOS鸿蒙系统开发应用程序,免费开源DevEco Studio开发工具

DevEco Studio 是华为为 HarmonyOS 和 OpenHarmony 开发者提供的官方集成开发环境(IDE),它基于 IntelliJ IDEA Community 版本打造,提供了代码编辑、编译、调试、发布等一体化服务。 一、DevEco Studio支持系统 DevEco Studio支持…

windows系统中后台运行java程序

在windows系统中后台运行java程序,就是在启动java程序后,关闭命令行行窗口执行。 1、命令行方式 命令行方式运行java程序 启动脚本如下: echo off start java -jar app.jar exit启动后的结果如下 这种方式下,会马上启动一个命…

【初阶数据结构】排序——选择排序

目录 前言选择排序堆排序 前言 对于常见的排序算法有以下几种: 下面这节我们来看选择排序算法。 选择排序 基本思想:   每一次从待排序的数据元素中遍历选出最大(或最小)的元素放在序列的起始位置,直到全部待排序…

DataGrip远程连接Hive

学会用datagrip远程操作hive 连接前提条件: 注意:mysql是否是开启状态 启动hadoop集群 start-all.sh 1、启动hiveserver2服务 nohup hiveserver2 >> /usr/local/soft/hive-3.1.3/hiveserver2.log 2>&1 & 2、beeline连接 beelin…

手机/平板端 Wallpaper 动态壁纸文件获取及白嫖使用指南

Wallpaper 动态壁纸文件获取及使用指南 目录 壁纸文件获取手机 / 平板使用手机 / 平板效果预览注意事项PC/Mac 使用 1. 壁纸文件获取链接 链接:夸克网盘分享 复制链接到浏览器打开并转存下载即可。 (主页往期视频的 4K 原图和 mpkg 动态壁纸文件&#xf…

MySQL vs PostgreSQL:2024年深度对比与选择指南

目录 引言基本特性对比性能比较可扩展性数据类型和索引支持复制和高可用性安全性生态系统和社区支持云服务支持使用场景分析总结 引言 在选择关系型数据库管理系统(RDBMS)时,MySQL和PostgreSQL常常是开发者和企业面临的两个主要选项。本文…

历年图灵奖获奖者

历年图灵奖获奖者 图灵奖(Turing Award),全称A.M.图灵奖(ACM A.M Turing Award),是由美国计算机协会(ACM)于1966年设立的计算机奖项,名称取自艾伦麦席森图灵&#xff08…

机器学习-KNN

KNN:K最邻近算法(K-Nearest Neighbor,KNN) 用特征空间中距离待分类对象的最近的K个样例点的类别来预测。 投票法:K 个样例的对数类别。 k1:最近邻分类 k 通常是奇数(因为我们根据这个K数据判断类别,如果…

Eslint配置

使用create vue创建的vue工程,碰到eslint的一些错误 1. 版本问题 在vue中安装的版本与vscode扩展中安装的版本不匹配,导致扩展中的Eslint的运行状态为尚未激活 2. vue中的Eslint配置与.prettierrc中的配置冲突 比如:prettierrc中设置单引…

探索 TensorFlow:构建强大的机器学习模型

探索 TensorFlow:构建强大的机器学习模型 TensorFlow,由Google开发并维护,是一个开源的机器学习库,广泛用于深度学习研究和生产。它提供了丰富的API和工具,使得构建、训练和部署复杂的机器学习模型变得简单而高效。在…

LeetCode 算法:只出现一次的数字 c++

原题链接🔗:只出现一次的数字难度:简单⭐️ 题目 给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法来解决此…

深入探索机器学习中的目标分类算法

在当今数据驱动的世界中,机器学习(Machine Learning, ML)正逐渐成为解决问题的重要工具。在众多机器学习任务中,目标分类(Classification)算法尤其受到关注。本文将深入探讨目标分类算法的基本概念、常见类…

面试加分必看,11道接口安全测试面试题!

今天,分享一些在面试中可能会遇到的接口安全测试面试问题,助你在面试中从容不迫。 01.HTTPS 与 HTTP 的区别? 02.OSI七层模型是指? 03.你所知道的 HTTP 状态码? 04.你知道SQL注入吗? 05.SQL 注入与XSS…

js逆向——webpack实战案例(一)

今日受害者网站:https://www.iciba.com/translate?typetext 首先通过跟栈的方法找到加密位置 我们跟进u函数,发现是通过webpack加载的 向上寻找u的加载位置,然后打上断点,刷新网页,让程序断在加载函数的位置 u r.n…