线性动态规划 一、定义 线性动态规划是指目标函数为特定变量的线性函数,约束是这些变量的线性不等式或等式,目的是求目标函数的最大值或最小值。 二、典型例题 1、最长上升序列问题 问题描述:设有序列B为B1,B2,B3……Bn,若存在下标i1<i2<i3<……in,且Bi1<Bi2<Bi3<……Bin, ...
                            
                            
                                分类:
其他好文   时间:
2016-11-13 18:52:08   
                                阅读次数:
186
                             
                    
                        
                            
                            
                                注意最长公共子串(Longest CommonSubstring)和最长公共子序列(LongestCommon Subsequence, LCS)的区别:子串(Substring)是串的一个连续的部分,子序列(Subsequence)则是从不改变序列的顺序,而从序列中去掉任意的元素而获得的新序列;更 ...
                            
                            
                                分类:
其他好文   时间:
2016-11-04 14:24:17   
                                阅读次数:
200
                             
                    
                        
                            
                            
                                    算法常用术语中英对照Data Structures 基本数据结构Dictionaries 字典PriorityQueues 堆Graph Data Structures 图Set Data Structures 集合Kd-Trees 线段树Numerical Problems 数值问题Solving ...
                            
                            
                                分类:
编程语言   时间:
2016-11-03 02:23:27   
                                阅读次数:
170
                             
                    
                        
                            
                            
                                编辑距离,又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符 实现方案: 1. 找出最长公共子串长度 参考代码: apache commons-lang ...
                            
                            
                                分类:
其他好文   时间:
2016-11-02 18:08:42   
                                阅读次数:
208
                             
                    
                        
                            
                            
                                http://www.cppblog.com/mysileng/archive/2012/11/30/195841.html 最长递增子序列问题:在一列数中寻找一些数,这些数满足:任意两个数a[i]和a[j],若i<j,必有a[i]<a[j],这样最长的子序列称为最长递增子序列。 设dp[i]表示以 ...
                            
                            
                                分类:
其他好文   时间:
2016-10-27 01:08:01   
                                阅读次数:
231
                             
                    
                        
                            
                            
                                    最长公共子串与最长公共子序列是有区别的。区别在于最长公共子串要求字符是连续的。 例如:str1: abcd str2: abec那么最长公共子序列是:abc,长度为3最长公共子串是:ab,长度为2 1. 最长公共子序列 Largest common subsequence 最长公共子序列:用f[i] ...
                            
                            
                                分类:
其他好文   时间:
2016-10-26 19:10:43   
                                阅读次数:
172
                             
                    
                        
                            
                            
                                http://poj.org/problem?id=2774 题目大意就是给两个字符串,求最长公共子串。好像可以哈希切掉,但是为了练一练后缀数组以及学一学后缀自动机,我用不同方法终于A掉了这道题。 后缀数组:就是求出height数组然后扫一遍,求出满足条件的最大值(满足条件是指height所指的两个 ...
                            
                            
                                分类:
编程语言   时间:
2016-10-23 14:03:42   
                                阅读次数:
305
                             
                    
                        
                            
                            
                                    Description 给出两个字符串,求最长公共子串. Sol SAM. 这题随便做啊...后缀数组/Hash+二分都可以. SAM就是模板啊...直接在SAM上跑就行,没有了 \(go[w]\) 就往 \(par\) 跳. 每走一步统计一下答案. Code ...
                            
                            
                                分类:
其他好文   时间:
2016-10-12 22:21:56   
                                阅读次数:
137
                             
                    
                        
                            
                            
                                    最长公共子串(Longest Common Substirng)和最长公共子序列(Longest Common Subsequence,LCS)的区别为:子串是串的一个连续的部分,子序列则是从不改变序列的顺序,而从序列中去掉任意的元素而获得新的序列;也就是 说,子串中字符的位置必须是连续的,子序列则 ...
                            
                            
                                分类:
其他好文   时间:
2016-10-09 23:13:22   
                                阅读次数:
158
                             
                    
                        
                            
                            
                                    A:String Master 题目:所谓最长公共子串,比如串 A:“abcde”,串 B:“jcdkl”,则它们的最长公共子串为串 “cd”,即长 度最长的字符串,且在两个串中都作为连续子串出现过。给定两个长度都为 n 的字符串,对于字符串大师的你来说,求它们的最长公共子串再简单不过了。所以现在你 ...
                            
                            
                                分类:
其他好文   时间:
2016-10-05 00:40:14   
                                阅读次数:
324