【力扣·每日一题】1576. 替换所有的问号(C++ 字符串模拟 思维)

简介: 【力扣·每日一题】1576. 替换所有的问号(C++ 字符串模拟 思维)

linkk

20200401134307494.png

思路:

只是跟相邻两个字符不可以相同,所以用三个字母就可以完成填充。遍历判断就可以了。

代码:

class Solution {
public:
    string modifyString(string s) {
        char ans[]={'a','b','c'};
        for(int i=0;i<s.size();i++){
            if(s[i]=='?'){
                if(i==0){
                    for(int j=0;j<3;j++){
                        if(ans[j]==s[i+1]) continue;
                        s[i]=ans[j];break;
                    }
                }
                else if(i==s.size()-1){
                    for(int j=0;j<3;j++){
                        if(ans[j]==s[i-1]) continue;
                        s[i]=ans[j];break;
                    }
                }
                else{
                    for(int j=0;j<3;j++){
                        if(ans[j]==s[i-1]||ans[j]==s[i+1]) continue;
                        s[i]=ans[j];break;
                    }
                }
            }
        }
        return s;
    }
};


目录
相关文章
|
2月前
|
存储 算法 编译器
【C++ 字符数组的模板特化】面向字符串的C++模板特化:理解与实践
【C++ 字符数组的模板特化】面向字符串的C++模板特化:理解与实践
54 1
|
2月前
|
存储 Linux 编译器
Linux C/C++ 编程 内存管理之道:探寻编程世界中的思维乐趣
Linux C/C++ 编程 内存管理之道:探寻编程世界中的思维乐趣
52 0
|
29天前
|
算法 Java C语言
C++和Java中的随机函数你玩明白了吗?内附LeetCode470.rand7()爆改rand10()巨详细题解,带你打败LeetCode%99选手
C++和Java中的随机函数你玩明白了吗?内附LeetCode470.rand7()爆改rand10()巨详细题解,带你打败LeetCode%99选手
|
2月前
|
存储 C++ 索引
C++ 字符串完全指南:学习基础知识到掌握高级应用技巧
C++的字符串使用`string`类处理,如`string greeting = &quot;Hello&quot;`。字符串连接可通过`+`或`append()`函数实现。访问字符使用索引,如`myString[0]`。`length()`或`size()`可获取长度。`getline()`用于读取整行输入。注意转义字符如`\\&quot;`用于在字符串中嵌入双引号。使用`cin`读取字符串时,空格会终止输入,而`getline()`能读取整行。
25 0
|
2天前
|
存储 算法 安全
【刷题】 leetcode 面试题 01.06 字符串压缩
来看效果: 非常好!!!过啦!!!
22 5
|
2天前
leetcode代码记录(删除字符串中的所有相邻重复项
leetcode代码记录(删除字符串中的所有相邻重复项
8 0
|
12天前
|
编解码 JavaScript 前端开发
【专栏】介绍了字符串Base64编解码的基本原理和在Java、Python、C++、JavaScript及Go等编程语言中的实现示例
【4月更文挑战第29天】本文介绍了字符串Base64编解码的基本原理和在Java、Python、C++、JavaScript及Go等编程语言中的实现示例。Base64编码将24位二进制数据转换为32位可打印字符,用“=”作填充。文中展示了各语言的编码解码代码,帮助开发者理解并应用于实际项目。
|
16天前
|
存储 编译器 C语言
C++字符串大小写之for语句
C++字符串大小写之for语句
17 0
|
17天前
|
C++
【代码片段】【C++】获取当前时间戳并生成固定格式字符串
【代码片段】【C++】获取当前时间戳并生成固定格式字符串
14 0