Replace All ?'s to Avoid Consecutive Repeating Characters LeetCode solution in Java

1
class Solution {
2
public String modifyString(String s) {
3

4
if (s.length() == 1) {
5
return String.valueOf('a');
6
}
7
if (s.length() == 0) {
8
return null;
9
}
10

11
StringBuilder stringBuilder = new StringBuilder(s);
12
for (int i = 0; i < stringBuilder.length(); i++) {
13
if (stringBuilder.charAt(i) == '?') {
14
for (char j = 'a'; j <= 'z'; j++) {
15
if (i != 0
16
&& i != stringBuilder.length() - 1
17
&& j != stringBuilder.charAt(i - 1)
18
&& j != stringBuilder.charAt(i + 1)) {
19
stringBuilder.replace(i, i + 1, String.valueOf(j));
20
}
21
if (i == 0 && j != stringBuilder.charAt(i + 1)) {
22
stringBuilder.replace(i, i + 1, String.valueOf(j));
23
}
24
if (i == stringBuilder.length() - 1 && j != stringBuilder.charAt(i - 1)) {
25
stringBuilder.replace(i, i + 1, String.valueOf(j));
26
}
27
}
28
}
29
}
30
return stringBuilder.toString();
31
}
32
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0