题目

解题思路

  1. 将字符串转换成字符数组;
  2. 遍历字符数组,首位对称字符对比;
  3. 若不相同则将较小的字符赋值给较大的字符;

代码展示

class Solution {
    public String makeSmallestPalindrome(String s) {
        char[] chars = s.toCharArray();
        int n = chars.length;
        for (int i = 0; i < n / 2; i++){
            if(chars[i] != chars[n - 1 - i]){
                if(chars[i] > chars[n - 1 - i]){
                    chars[i] = chars[n - 1 - i];
                } else {
                    chars[n - 1 - i] = chars[i];
                }
            }
        }
        return new String(chars);
    }
}
12-23 16:42