LeetCode 1576 替换所有的问号[字符串] HERODING的LeetCode之路
Posted HERODING23
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 1576 替换所有的问号[字符串] HERODING的LeetCode之路相关的知识,希望对你有一定的参考价值。
解题思路:
如果考虑头尾的问号,那么就会多出需要判断,最简单的方法是在首尾添加任意字母,让所有的问号都被包围起来,再一个一个遍历寻找,找到后,用a,b,c三个字符就可以替换(根据前后判断选择),代码如下:
class Solution
public:
string modifyString(string s)
int n = s.size();
s.push_back('a');
s.insert(0, 1, 'a');
for(int i = 1; i < n + 1; i ++)
if(s[i] != '?') continue;
for(char c = 'a'; c <= 'c'; c ++)
if(s[i - 1] != c && s[i + 1] != c)
s[i] = c;
break;
return s.substr(1, n);
;
以上是关于LeetCode 1576 替换所有的问号[字符串] HERODING的LeetCode之路的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode力扣打卡之1576. 替换所有的问号(Python3)
LeetCode 1185. 一周中的第几天 / 913. 猫和老鼠(博弈,动态规划) / 1576. 替换所有的问号
LeetCode --- 1576. Replace All ?‘s to Avoid Consecutive Repeating Characters 解题报告
LeetCode --- 1576. Replace All ?‘s to Avoid Consecutive Repeating Characters 解题报告