【C++】leetcode刷题常见语法汇总

在刷题的过程中,发现有些语法经常容易忘记,所以本篇主要想记录一些语法,便于后续复习查看,本篇内容根据刷题进度同步更新。


1、sort

vector &strs; //函数中传vector形参
sort(strs.begin(), strs.end(), compare);
//在类中定义函数,前加static
static bool compare(string &s1, string &s2)
{
    return (s1.length() < s2.length());//自定义比较方式
}

2、string相关

(1)计算长度:

str.length();

(2)获得子字符串:

str.substr(0, i);//0代表起始位置,i表示所获得子串的长度

(3)找寻某元素在string中的位置:

char a = 'c';
int ind = str.find(a);//从前往后查找第一个位置返回下标
int index = s.rfind('c'); //从后往前查找第一个位置返回下标

(4)删除字符串末尾的空格字符

s.erase(s.find_last_not_of(" ") + 1);//查找字符, 从后往前, 找查不在引号中的字符首次出现的下标

3、vector相关

(1)动态数组定义即存储时带元素个数n的初始化:

//注意:若不使用push_back添加元素,则一定要带n,n为元素个数
vector strs(n);

(2)遍历:

for (int i = 0; i < strs.size() ; i++)
{
       strs[i]...
}

(3)动态数组定义即存储时不带元素个数n的情况:

vector number;
while(sum>0)
{
       number.push_back(sum%10);
       sum = sum/10;
 }

(4)数组倒置:

reverse(number.begin(),number.end());

(5)vector常用函数


4、变量类型转换

int转为string:

string num = to_string(x);

5、语法容易犯错部分

(1)switch-case后必须加break


越努力,越幸运.jpg

end~

你可能感兴趣的:(【C++】leetcode刷题常见语法汇总)