刷题_day16,继续加油啊
一、字符串替换
题目解析
这道题是一道简单的字符题目,题目给我们一个字符串
A,和n表示A字符串的长度,再给出一个字符数组arg,m表示arg中是数据个数。然我们在字符串
A中找到%s然后替换成arg中的字符;
算法分析
这道题就非常简单简单了,我们直接在 A 中寻找 %s,然后将 arg 中的字符替换即可。
当然这里没有必要在原字符串中进行操作,创建一个新的字符串 ret 即可。
这里需要注意:
A字符串中的%s的个数可能会小于arg中的字符数量,
代码实现
class StringFormat {
public:
string formatString(string A, int n, vector<char> arg, int m) {
// write code here
string ret;
int sz = A.size();
int k = 0;
for (int i = 0, j = 1; j < sz; i++, j++) {
if (A[i] != '%' || A[j] != 's') ret += A[i];
else {
ret += arg[k++];
i++;
j++;
}
}
(A[sz - ] != ) ret += A[sz - ];
(k < arg.()) ret += arg[k++];
ret;
}
};


