后端岗位面试题更新 2026-08-05

手撕:给你一棵二叉树,根为 root。请你删除一条边,使二叉树分裂成两棵子树,且这两棵子树各自的节点和之积尽可能大。示例输入:root={1,2,3,4,5,6},输出:110,请实现并解释算法。

小米集团后端开发电子/半导体编码实现问题拆解

考察说明

考察二叉树遍历、子树和计算以及乘积最大化策略

回答思路

  1. 明确计算整棵树的总和以及每个子树的和
  2. 说明如何枚举每条边的删除并计算对应乘积
  3. 分析时间复杂度并优化到 O(n)
  4. 对示例输入能正确得出 110
  5. 处理空树或单节点等边界情况
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。