字符串
字符串变长
适用于原地修改字符串的情形,多结合双指针从后往前进行移动和修改,进而降低空间复杂度
s.resize(s.size()+extrasize);
可参考题目:
剑指offer 05. 替换空格
举一反三:
填充类题目,都可以考虑原地扩充大小然后双指针从后往前操作。
substr的使用
s.substr(startidx, length);
to_string()函数
将数字转换为字符串
int x = 2022;
string s = to_string(x);
数组
数组前后补零
vector<int> nums;
...
nums.insert(nums.begin(), 0);
nums.push_back(0);
数组初始化
int nums[101] = {0};
vector<vector<int>> nums(2, vector<int> (2, 0));
排序
自定义比较函数
//一维数组
static bool cmp(int a, int b){
return a>b;
}
//二维数组
static bool cmp(vector<int>& n, vector<int>& m){
if(n[0] == m[0]) return n[1] < m[1];
return n[0] > m[0];
}

本文探讨了字符串操作中的substr和to_string技巧,如何通过原地修改扩充字符串,以及数组的前后补零和自定义排序函数。实例涵盖了字符串长度调整、数字转字符串和数组操作的实用场景,适合前端、后端开发者阅读。

被折叠的 条评论
为什么被折叠?



