在求解最长公共子序列(LCS)问题时,给定两个字符串X和Y,长度分别为m和n。以下哪种方法可以在时间复杂度为O(mn)的情况下,准确求出X和Y的最长公共子序列的长度?

答案解析

选项A和D虽然都能准确求出最长公共子序列的长度,但它们的时间复杂度为O(mn),空间复杂度也为O(mn),没有利用到动态规划的空间优化技巧。选项C通过顺序更新dp数组,会导致同一字符被多次考虑,从而无法保证结果的准确性。选项B通过逆序更新dp数组,确保了每个字符只被考虑一次,同时实现了空间复杂度为O(n)的优化,因此是正确答案。
正确答案:B
随机推荐
开始刷题