1.概念解析
什么是模拟算法?
简单来说就是按照题目给定的规则与逻辑,按步骤细致地重现事件的发展流程,进而获取最终结果的算法。
2.替换所有的问号
题目描述:

示例:

题目链接:替换所有的问号
题解:

这题很简单,显然是先遍历一遍数组,然后在遍历的时候,如果遇到 ? 就替换为与该位置前后都不相同的数,所以也要对要替换的数遍历一遍,直到发现合适的数。
细节问题:
注意边界情况,没有两个相邻的数。
代码实现:
#include <iostream>
#include <vector>
using namespace std;
class Solution {
public:
string modifyString(string s) {
for (int i = 0; i < s.size(); ++i) {
if (s[i] == '?') {
for ( ch = ; ch <= ; ++ch) {
((i == || ch != s[i - ]) && (i == s.() - || ch != s[i + ])) {
s[i] = ch;
;
}
}
}
}
s;
}
};


















