day46
647、回文子串:
//动态规划解法:布尔类型的二维dp数组
//dp[i][j]:区间范围[i,j](左闭右闭)的子串是否是回文子串,如果是dp[i][j]为true,否则为false。
//递推公式:主要分为s[i]和s[j]相等和不相等的情况
//不相等时:dp[i][j] = false;
//相等时:
//1、i=j时为单个字符,所以dp[i][j] = true
//2、j-i=1时为两个相同的字符,所以dp[i][j] = true
//3、看dp[i][j]是否为true,可以由dp[i+1][j-1]推导出来
//初始化:全初始化为false,后面再去判断更新
//遍历顺序:由于dp[i][j]要由dp[i+1][j-1]推导出来,所有i从大到小,j从小到大遍历(因为是字符串区间,所以j一定要大于i)
516、回文子序列:
//回文子序列不要求连续
//dp[i][j]:区间范围[i,j](左闭右闭)的子串的最长回文子序列
//递推公式:主要看s[i]和s[j]是否相等
//如果相等,则dp[i][j] = dp[i+1][j-1] + 2;//注意单个字符和两个字符的情况
//不相等,则dp[i][j] = max(dp[i+1][j], dp[i][j-1]);
//初始化:全初始化为0;
//遍历顺序i--,j++
//动态规划解法:布尔类型的二维dp数组
//dp[i][j]:区间范围[i,j](左闭右闭)的子串是否是回文子串,如果是dp[i][j]为true,否则为false。
//递推公式:主要分为s[i]和s[j]相等和不相等的情况
//不相等时:dp[i][j] = false;
//相等时:
//1、i=j时为单个字符,所以dp[i][j] = true
//2、j-i=1时为两个相同的字符,所以dp[i][j] = true
//3、看dp[i][j]是否为true,可以由dp[i+1][j-1]推导出来
//初始化:全初始化为false,后面再去判断更新
//遍历顺序:由于dp[i][j]要由dp[i+1][j-1]推导出来,所有i从大到小,j从小到大遍历(因为是字符串区间,所以j一定要大于i)
516、回文子序列:
//回文子序列不要求连续
//dp[i][j]:区间范围[i,j](左闭右闭)的子串的最长回文子序列
//递推公式:主要看s[i]和s[j]是否相等
//如果相等,则dp[i][j] = dp[i+1][j-1] + 2;//注意单个字符和两个字符的情况
//不相等,则dp[i][j] = max(dp[i+1][j], dp[i][j-1]);
//初始化:全初始化为0;
//遍历顺序i--,j++
全部评论
相关推荐
10-29 16:42
门头沟学院 Java 1.今天什么国标的公司打电话约面试,还得准备ppt,好麻烦,网上查薪资一般,打算拒了,不面了2.字节又复活了,什么安全开发,也不知道怎么样,面一面试试吧,还是挺想去字节的,但好难,随缘吧所以今天没面试
嵌入式的小白:面试前可以好好准备下
1.看看你投递的岗位的岗位描述,分析下是哪个业务线,同使要罗列他们描述中提到的技术点
2.根据1中的两点准备
3.岗位描述中应该还有语言要求,这个刷刷八股,要是对自己语言能力很有把握,那就不用看这点了
4.找下你简历中项目部分,看有没有和岗位描述中技术点重合的,这种在面试提到项目时,是高概率问题
好好准备,祝你面试顺利 点赞 评论 收藏
分享
