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

请实现一个背包问题的变体:给定物品重量数组 weights 和价值数组 values,背包容量为 capacity,每个物品只能选择一次,求背包能装下的最大价值。请写出代码并分析时间复杂度。

滴滴后端开发编码实现问题拆解技术原理

考察说明

考察动态规划基础、背包问题变体的建模与代码实现能力

回答思路

  1. 正确识别为 0/1 背包问题变体并建立状态转移方程
  2. 实现二维或一维 dp 数组,正确初始化边界条件
  3. 能分析时间与空间复杂度,理解一维滚动数组优化
  4. 能处理物品数量或容量为 0 的边界情况
本题已收录答题指导

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

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