leetcode刷题常用C++函数

1. 字符串截取

截取下标从2(第3个字符)开始截取3个字符的字符串

string str = "ABCDEFG";
string cut= str.substr(2,3);

最终,cut="CDE",即从下标为2开始向后数3位

2. 字符串扩容

string s(len);
s.resize(len+len2);

3. sort函数中cmp重写

如果cmp返回结果为False, 那么函数就会将他们互换位置;

如果cmp返回结果为True,就会保持原来位置不变。

class Solution {
public:
    string minNumber(vector<int>& nums) {
        string s="";
        sort(begin(nums),end(nums),cmp);
        for(int i=0;i<nums.size();i++)
            s+=to_string(nums[i]);
        return s;
    }
    bool static cmp(string& s1, string& s2)//注意要加static
    {
        return s1+s2<s2+s1;
    }
};

 另一种形式:

sort(begin(nums),end(nums),[](string& s1, string& s2){//注意没有函数名cmp,用[]
            return s1+s2<s2+s1;
        });

4.字符串初始化

string s(n,'0');//s="00...00",初始化为n个0

5.字符串比较函数

in strcmp(string str1,string str2)               //区分字符串中字母大小写地比较
int strcasecmp(string str1,string str2)          //忽略字符串中字母大小写地比较

str1=str2时,返回0;str1>str时返回1;str1<str2时返回-1。

6. 关于位运算

剑指15.16都与为运算有关

7.c++vector insert函数

iterator insert( iterator loc, const TYPE &val );
void insert( iterator loc, size_type num, const TYPE &val );
void insert( iterator loc, input_iterator start, input_iterator end ); 

insert() 函数有以下三种用法:
在指定位置loc插入值为val的元素,返回指向这个元素的迭代器,
在指定位置loc插入num个值为val的元素
在指定位置loc插入区间[start, end)的所有元素 .

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值