subproblem(子问题):在解决一个更大问题(尤其是数学、算法与计算机科学中的优化/递归问题)时,被拆分出来的较小问题。常见于分治与动态规划,子问题的解可被组合或复用以得到原问题的解。(在日常英语中也可泛指“更大任务中的一个小问题”,但最常见用法在技术语境。)
/ˈsʌbˌprɑːbləm/(美式)
/ˈsʌbˌprɒbləm/(英式)
The algorithm breaks the task into smaller subproblems.
该算法把任务拆分成更小的子问题。
In dynamic programming, we store the answer to each subproblem so we don’t compute it again, which greatly reduces the running time.
在动态规划中,我们保存每个子问题的答案以避免重复计算,从而大幅降低运行时间。
由前缀 **sub-**(“在下、次级、分支”)+ problem(“问题”)构成,字面意思是“次级/下层的问题”。在20世纪算法与运筹学发展中,该词在“把复杂问题分解为可管理部分”的语境里逐渐固定为技术术语。