本文参考UCAS卜东波老师算法设计与分析课程撰写
前言
这个标题说实话有点长,本文主要想借上文的例子来说明在实际应用问题中通过对考虑对象的筛选将问题讨论范围压缩,使得计算的冗余点突出出来,再以此入手,降低算法时间复杂度。
在前文算法设计与分析:动态规划(3)-序列联配问题(以算代存)中,我们已经利用分治思想,将原本需要 O ( m n ) O(mn) O(mn)空间复杂度的动态规划问题转换成只需要 O ( m + n ) O(m+n) O(m+n),进一步地,在本文中,我们考虑能否将时间复杂度也降低。
最终实现的结果是将 O ( m n ) O(mn) O(mn)的时间复杂度降低到 O ( α max { m , n } ) O(\alpha

本文通过分析序列联配问题,探讨如何降低时间复杂度。借助预处理剔除不相似字符串,聚焦于对角线附近区域,通过设置条带参数α实现O(αmax{m,n})的时间复杂度。介绍了新算法的伪代码实现,减少了冗余计算。"
123528773,11682768,Java方法重写与继承详解,"['Java', '方法重写', '继承', '访问权限', '方法重载']
- 序列联配问题(观察回溯路径)&spm=1001.2101.3001.5002&articleId=102894420&d=1&t=3&u=aa48127c805e4315974ddb35f484ae0f)
2078

被折叠的 条评论
为什么被折叠?



