0
点赞
收藏
分享

微信扫一扫

排序算法之【归并排序】

小飞侠熙熙 2023-10-09 阅读 37
算法

1576. 替换所有的问号

在这里插入图片描述


C代码:自己写的

char * modifyString(char * s){
    int n = strlen(s);
    for (int i = 0; i < n; ++i){
        if (s[i] == '?') {
            if (i != 0 && i != n-1) {
                for (int j = 0; j < 26; ++j) {
                    if ('a' + j != s[i-1] && 'a' + j != s[i+1]) {
                        s[i] = 'a' + j;
                        break;
                    }
                }
            } else if (i == 0){
                for (int j = 0; j < 26; ++j) {
                    if ('a' + j != s[i+1]) {
                        s[i] = 'a' + j;
                        break;
                    }
                }
            } else {
                for (int j = 0; j < 26; ++j) {
                    if ('a' + j != s[i-1]) {
                        s[i] = 'a' + j;
                        break;
                    }
                }
            }
        }
    }
    return s;
}

C代码:官方

char * modifyString(char * s) {
    int n = strlen(s);
    for (int i = 0; i < n; ++i) {
        if (s[i] == '?') {
            for (char ch = 'a'; ch <= 'c'; ++ch) {
                if ((i > 0 && s[i - 1] == ch) || (i < n - 1 && s[i + 1] == ch)) {
                    continue;
                }
                s[i] = ch;
                break;
            }
        }
    }
    return s;
}
举报

相关推荐

0 条评论