汽车行业面试题更新 2026-08-05

手写最长公共子串(Longest Common Substring)的二维动态规划解法,并分析时间与空间复杂度。

理想汽车前端/移动开发汽车编码实现问题拆解技术原理

考察说明

考察动态规划的状态定义、转移方程、边界处理及复杂度分析

回答思路

  1. 能给出dp[i][j]表示以A[i-1]和B[j-1]结尾的最长公共子串长度
  2. 正确写出转移方程:若字符相等则dp[i][j]=dp[i-1][j-1]+1,否则为0
  3. 用变量记录全局最大值及其结束位置,能回溯输出子串
  4. 分析时间O(n*m)、空间O(n*m),并提及可优化到O(min(n,m))或滚动数组
本题已收录答题指导

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

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