Simple C++ Solution
Intuition\n Describe your first thoughts on how to solve this problem. \nTake the smallest from s[i] and s[n-i-1] for every index  (0 <= i < n/2)\n\n# Complexit
# Intuition\n<!-- Describe your first thoughts on how to solve this problem. -->\nTake the smallest from s[i] and s[n-i-1] for every index  (0 <= i < n/2)\n\n# Complexity\n- Time complexity: $$O(n)$$\n<!-- Add your time complexity here, e.g. $$O(n)$$ -->\n\n\n# Code\n```\nclass Solution {\npublic:\n    string makeSmallestPalindrome(string s) {\n        int n = s.size();\n        for(int i=0; i<n/2; i++)\n        {\n            if(s[i] > s[n-i-1]) s[i] = s[n-i-1];\n            else s[n-i-1] = s[i];\n        }\n        return s;\n    }\n};\n```
['C++']