码迷,mamicode.com
首页 >  
搜索关键字:子序列    ( 5133个结果
动态时间规整DTW
来源:在日常的生活中我们最经常使用的距离毫无疑问应该是欧式距离,但是对于一些特殊情况,欧氏距离存在着其很明显的缺陷,比如说时间序列,举个比较简单的例子,序列A:1,1,1,10,2,3,序列B:1,1,1,2,10,3,如果用欧氏距离,也就是distance[i][j]=(b[j]-a[i])*(b...
分类:其他好文   时间:2014-05-28 01:47:15    阅读次数:402
对Big Oh的新的认识
对Big Oh的新的认识一个问题,它有很多种算法都能实现。每种算法它的时间、空间复杂度不一样。比如:问题1: 求最大连续子序列和的问题,可以有O(n3)、O(n2)、O(nlogn)和O(n)四种时间复杂度的解法。请看下面的代码:一、O(n3)算法 二、O(n2)算法 三、O(nlogn)算法用分治...
分类:其他好文   时间:2014-05-26 19:17:41    阅读次数:234
[HAOI2010]最长公共子序列
#include #include #include using namespace std; const int m=(int)1E8; string s1,s2; int f[2][5001]={0},g[2][5001]={0}; void init(); void work(); int my_max(int,int); int main() { freopen("lcs.in","r"...
分类:其他好文   时间:2014-05-26 04:07:17    阅读次数:305
笔试算法题(35):最长递增子序列 & 判定一个字符串是否可由另一个字符串旋转得到
出题:求数组中最长递增子序列的长度(递增子序列的元素可以不相连);分析:解法1:应用DP之前需要确定当前问题是否具有无后效性,也就是每个状态都是对之前状态的一个总结,之后的状态仅会受到前一个状态的影响;对于递增子序列 而言,可以首先确定前面k个元素的最长子序列,然后计算增加一个元素之后的最长子序列。...
分类:其他好文   时间:2014-05-25 22:20:16    阅读次数:339
最大子序列和问题
算法1 用两个for循环定位子序列的上下界,然后再用最内部的一个for循环求出上下界之间的元素和。 时间复杂度:O(N³)。 代码: int MaxSub(int *a, int n) { int sum = 0; int tmp; for (int i = 0; i < n; i++) { for (int j = i; j <...
分类:其他好文   时间:2014-05-25 21:28:44    阅读次数:243
ACM-DP之最大连续子序列——hdu1231
ACM DP 最大连续子序列 hdu1231...
分类:其他好文   时间:2014-05-25 11:06:40    阅读次数:235
最长公共子序列问题LCS
最长公共子序列问题LCS   问题描述: 一个给定序列的子序列是在该序列中删去若干元素后得到的序列。确切地说,若给定序列X= { x1, x2,…, xm},则另一序列Z= {z1, z2,…, zk}是X的子序列是指存在一个严格递增的下标序列 {i1, i2,…, ik},使得对于所有j=1,2,…,k有 Xij=Zj。例如,序列Z={B,C,D,B}是序列X={A,B,C,B,D,...
分类:其他好文   时间:2014-05-25 06:26:52    阅读次数:229
最长递增子序列
最长递增子序列 问题: 求一个一维数组中最长递增子序列的长度。 解法1: 很明显用动态规划的算法,选取下面的阶段(这种选法极为常见),可使阶段间的关系具有无后效性。 阶段:在所有以元素k结尾的子数组中,选出其中的最长递增子序列,k=1,2...n。 状态:以元素k结尾的最长递增子序列中只有一个最长的递增子序列。 决策:决定元素k结尾的最长递增子...
分类:其他好文   时间:2014-05-25 04:37:56    阅读次数:193
【leetcode】Best Time to Buy and Sell Stock III
题目:这个题目里要求最多交易2次。也就是说可以只交易一次,不交易也可以。 分析:将整个交易序列分割成两部分,求出这样的一种分割,使得两部分连续子序列的和相加的结果最大,当然,如果不进行分割,就是求出整个序列的最大连续子序列的和。 那么分割点就可能是任意位置。找出取得最大值的分割点,返回最大值。 int maxProfit(vector &prices) { const int le...
分类:其他好文   时间:2014-05-24 20:54:57    阅读次数:402
动态规划解最长公共子序列问题(转)
动态规划法 经常会遇到复杂问题不能简单地分解成几个子问题,而会分解出一系列的子问题。简单地采用把大问题分解成子问题,并综合子问题的解导出大问题的解的方法,问题求解耗时会按问题规模呈幂级数增加。 为了节约重复求相同子问题的时间,引入一个数组,不管它们是否对最终解有用,把所有子问题的解存于该数组中,这就是动态规划法所采用的基本方法。 【问题】 求两字符序列的最长公共字符子...
分类:其他好文   时间:2014-05-22 18:46:11    阅读次数:360
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!