打印尺寸大于给定字符串3的所有回文

时间:2014-07-31 18:41:41

标签: algorithm time-complexity dynamic-programming palindrome

我已经写好了。

public class Palindrom {    
    public static boolean isPalindrom(String s){
        char[] c = s.toCharArray();
        for(int i =0;i<=(s.length()-1)/2;i++){
            if(c[i]!=c[(s.length()-1)-i]){
                return false;
            }
        }
        return true;
    }
    public static void main(String[] args){
        String s="aba";
        int n=3;
        for(int j=0;j<s.length()-1;j++){
            for(int i =j+n;i<s.length()+1;i++){
                if(isPalindrom(s.substring(j,i))){
                    System.out.println(s.substring(j,i));            
                }
            }
        }
    }
}

代码的复杂性我认为是o(n ^ 3)。如果我错了,请纠正我。 有人请确认这是正确的

也可以有人告诉我如何使用DP(动态编程)解决这个问题吗?

0 个答案:

没有答案