- 博客(5)
- 资源 (2)
- 收藏
- 关注
原创 Poj 1631 Bridging signals(二分+DP 解 LIS)
题意:题目很难懂,题意很简单,求最长递增子序列LIS。分析:本题的最大数据40000,多个case。用基础的O(N^2)动态规划求解是超时,采用O(n*log2n)的二分查找加速的改进型DP后AC了。在基础的动态规划解法中,由于动态规划的无后效性(对于每个阶段来说,它以前的各阶段状态无法直接影响它未来的决策,只能间接地通过当前状态来影响),当我们考察第i+1个元素的时候,我们是不考虑前面i
2014-02-28 15:54:04 715
原创 字符串相似度的几种衡量标准
比较字符串之间的相似度有很多的方法,实际上也确实已经出现了很多相似度的定义。最简单的一种,就是一个字符串是另外一个字符串的字串,那么可以说它们是相似的。常见的题型就是求字串,这种用S1.contain(String S2)就可以判断。很多时候S1和S2都不是对方的字串,我们还可以这样来定义相似性:如果将一个串转换为另一个串的操作很少,那么我们可以说两个串是相似的。例子有Poj 3356用递
2014-02-28 11:35:45 1769
原创 Poj 3356 ACGT(LCS 或 带备忘的递归)
题意:把一个字符串通过增、删、改三种操作变成另外一个字符串,求最少的操作数。分析:可以用LCS求出最大公共子序列,再把两个串中更长的那一串中不是公共子序列的部分删除。分析可知两个字符串的距离肯定不会超过它们的长度之和,因为我们可以通过删除操作把两个串化为空串。如果两个字符串的第一个元素相同,则求A[2...ALen]和B[2...BLen]即可,如果不相同,则逐一分析增、删
2014-02-28 11:04:26 904
原创 微笔记--为数组重用时,为重新赋值和重新为数组分配空间的差别
以Poj 3356为例子,比较下面两种写法的差别:import java.util.Scanner;public class Main { //数组初始分配 static int[][] dp=new int[1001][1001]; public static int count(String s,int sB,int sE,String t,int tB,int tE){
2014-02-28 10:34:42 1004
原创 照片Urls
"http://img.my.csdn.net/uploads/201402/16/1392530364_7835.jpg" "http://img.my.csdn.net/uploads/201402/16/1392530363_3949.jpg" "http://img.my.csdn.net/uploads/201402/16/1392530363_974
2014-02-16 16:08:23 1065
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人