LCS(longest common sequence)算法的实现(十分详细)
一、问题描述
有两个字符串,求二者的最长公共子序列。
最长公共子序列:不必连续但必须有序的子列(与子串区分,子串是连续的)
二:解决方法
第一种方法:穷举法 ,就是一个一个的对比,但这个方法的时间复杂度为O(2^n),故而不多做赘述。
第二种方法:分而治之+动态规划法。
三:动态规划
关于动态规划法我的理解是增加空间代价来减少时间代价,这个方法常用于寻找最优解。
与分而治之类似,通过某种手段将一个大问题分解成为若干个小问题,再分解成更小的问题,但这样的话会导致重复计算,就是小问题与小问题之间有相同的地方,从
原创
2021-03-15 22:45:04 ·
634 阅读 ·
0 评论