数据结构-判断回文-java

题目

给定一个长度为 n 的字符串,请编写一个函数判断该字符串是否回文。如果是回文请返回true,否则返回false。字符串回文指该字符串正序与其逆序逐字符一致。

解题一

利用栈,对字符串进行入栈和出栈操作,在进行比较。

代码

public static boolean judge2 (String str) {
    
    
        if (str.length()<2){
    
    
            return true;
        }

        Stack<Character> stack = new Stack<>();
        for (int i = 0; i < str.length(); i++) {
    
    
            stack.push(str.charAt(i));
        }
        StringBuilder builder = new StringBuilder();
        while (!stack.isEmpty()){
    
    
            builder.append(stack.pop());
        }
        return str.equals(builder.toString());
    }

解题二

直接进行判断

public static boolean judge (String str) {
    
    

        if(str.length() == 1)
        {
    
    
            return true;
        }
        for (int i = 0; i < str.length()/2; i++) {
    
    
            if (str.charAt(i)!=str.charAt(str.length()-i-1)){
    
    
                return false;
            }
        }
        return true;
    }

猜你喜欢

转载自blog.csdn.net/qq_25064691/article/details/121149878