题解 | #最长公共子序列-II#

最长公共子序列-II

http://www.nowcoder.com/practice/6d29638c85bb4ffd80c020fe244baf11

代码精简版

public static String LCS (String s1, String s2) {
        // write code here
        int n1 = s1.length(), n2 = s2.length();
        String[][] dp = new String[n1+1][n2+1];
        String res = "";
        for (int i=0;i<=n1;i++){
            for (int j=0;j<=n2;j++){
                // 所有的string都要初始化
                dp[i][j] = "";
                if (i == 0 || j == 0) continue;
                String c1 = s1.substring(i-1, i);
                String c2 = s2.substring(j-1, j);
                if (c1.equals(c2)){
                    dp[i][j] = dp[i-1][j-1] + c1;
                    if (dp[i][j].length() > res.length()){
                        res = dp[i][j];
                    }
                }else {
                    dp[i][j] = dp[i][j-1].length()>=dp[i-1][j].length() ? dp[i][j-1] : dp[i-1][j];
                }
            }
        }
        return res.equals("") ? "-1" : res;
    }
全部评论

相关推荐

vip牛牛:测试吧,开发现在至少212
点赞 评论 收藏
分享
👏offer1:杭州银行,软开,总包25w,说是无加班费且不调休💯offer2:去哪儿,前端开发。base北京,n&nbsp;*&nbsp;16,一周两天居家办公(不知真假),1075,前5年旅游补贴,打卡满时间可申请餐补🌱offer3:微店,前端开发。base杭州,n&nbsp;*&nbsp;14,双休,9:30&nbsp;~&nbsp;18:00,偶尔加班
吃猫的鱼_:第一段去银行的话,估计后面就躺平了,很难再跳槽大厂私企了,不利于涨薪以及个人技术发展的。 如果想跳槽涨薪,建议去私企卷一两年然后跳槽大厂干几年然后再去找个舒服点的养老
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务