2025.2.5总结

题目描述

有一个 𝑛(𝑛≤106)n(n≤106) 个结点的二叉树。给出每个结点的两个子结点编号(均不超过 𝑛n),建立一棵二叉树(根节点的编号为 11),如果是叶子结点,则输入 0 0

建好这棵二叉树之后,请求出它的深度。二叉树的深度是指从根节点到叶子结点时,最多经过了几层。

输入格式

第一行一个整数 𝑛n,表示结点数。

之后 𝑛n 行,第 𝑖i 行两个整数 𝑙l、𝑟r,分别表示结点 𝑖i 的左右子结点编号。若 𝑙=0l=0 则表示无左子结点,𝑟=0r=0 同理。

输出格式

一个整数,表示最大结点深度。

输入输出样例

输入 #1复制

复制代码
7
2 7
3 6
4 5
0 0
0 0
0 0
0 0

输出 #1复制

复制代码
4

代码:

复制代码
#include <stdio.h>

int n;
int left[1000001], right[1000001], depth[1000001];

void cal_depth(int node, int d)
{
    if (node == 0) 
	return;
    depth[node] = d;
    cal_depth(left[node],d + 1);
    cal_depth(right[node],d + 1);
}

int main() 
{
    scanf("%d",&n);
    for(int i = 1; i <= n;++i)
	{
        scanf("%d %d",&left[i], &right[i]);
    }
    cal_depth(1,1);
    int max = 0;
    for(int i = 1; i <= n; ++i)
        if(depth[i] > max) 
		max = depth[i];
    printf("%d\n",max);
    return 0;
}
相关推荐
CoovallyAIHub41 分钟前
智能“下沉”:边缘AI,更低功耗、更快响应、更强隐私,YOLO26只是开始
深度学习·算法·计算机视觉
yy_xzz1 小时前
【数据结构】大话单链表
数据结构·链表
Lear1 小时前
【链表】LeetCode 142.环形链表
算法
CoovallyAIHub1 小时前
2025目标检测模型全景图:从RF-DETR到YOLOv12,谁主沉浮?
深度学习·算法·计算机视觉
澪吟1 小时前
算法性能的核心度量:时间复杂度与空间复杂度全解析
数据结构·算法
咪咪渝粮2 小时前
108. 将有序数组转换为二叉搜索树
算法·leetcode
lzptouch2 小时前
蚁群(Ant Colony Optimization, ACO)算法
人工智能·算法·机器学习
苏纪云2 小时前
算法<C++>——双指针操作链表
c++·算法·链表·双指针
louisdlee.2 小时前
扫描线1:朴素扫描线
数据结构·c++·算法·扫描线
wan5555cn2 小时前
中国启用WPS格式进行国际交流:政策分析与影响评估
数据库·人工智能·笔记·深度学习·算法·wps