JAVA TWO POINTER APPROACH
IntuitionApproachComplexity
Time complexity: O(n)

Space complexity: O(n)
Code
# Intuition
<!-- Describe your first thoughts on how to solve this problem. -->

# Approach
<!-- Describe your approach to solving the problem. -->

# Complexity
- Time complexity: O(n)
<!-- Add your time complexity here, e.g. $$O(n)$$ -->

- Space complexity: O(n)
<!-- Add your space complexity here, e.g. $$O(n)$$ -->

# Code
```java []
class Solution {
    public String makeSmallestPalindrome(String s) {
        int n = s.length();
        char ch[] = s.toCharArray();

        int i = 0;
        int j = n-1;

        while(i < j) {

            if(ch[i] != ch[j]) {
                char c;

                if(ch[i] < ch[j]) {
                    c = ch[i];
                } else {
                    c = ch[j];
                }
                ch[i] = ch[j] = c;
            }

            i++;
            j--;

        }

        return new String(ch);
    }
}
```
['Two Pointers', 'Java']