Break a palindrome
October 10, 2022
array-and-hashmapProblem URL: Break a palindrome
We can check the half of the string and if a character is not a, we can replace it with a. If all characters are a, we can replace the last character with b. If the string is a single character, we can return an empty string.
class Solution:
def breakPalindrome(self, palindrome: str) -> str:
if len(palindrome) == 1:
return ''
for i in range(len(palindrome)//2):
if palindrome[i] != 'a':
return palindrome[:i] + 'a' + palindrome[i+1:]
return palindrome[:-1] + 'b'
Time complexity: O(n)
Space complexity: O(1)