LeetCode516

    技术2022-07-29  99

    class Solution { public int longestPalindromeSubseq(String s) { int[][] dp = new int[s.length()][s.length()]; //base for(int i = 0;i<s.length();i++){ dp[i][i] = 1; } for(int i = 1;i<s.length();i++){ for(int j = 0;j<i;j++){ dp[i][j] = 0; } } //状态转移 for(int i = s.length()-1 ;i>=0;i--){ for(int j =i+1;j<s.length();j++){ if(s.charAt(i)==s.charAt(j)){ dp[i][j] = dp[i+1][j-1]+2; } else{ dp[i][j] = Math.max(dp[i+1][j] , dp[i][j-1]); } } } return dp[0][s.length()-1]; } }

     

    Processed: 0.017, SQL: 9