【STL】vector,string,queue,list,set用法及函数总结

这一篇博客主要就是详细记录一下C++常用到的数据结构。算是总结归纳吧。这个博客不定期更新,我遇到啥新的情况,就记录下啥情况。

vector的用法及相关函数

  1. 变量的声明

    vector<int>a 这个相当于声明了一个int a[]大小没有指定
    vector<vector<int>>a 或者 vector<int *>a 相当于声明了一个二维数组
    vector<int>a(length,val) 相当于声明了一个长为length ,并且每个数值都为val的int型数组

  2. * 函数的使用*
    首先声明一个vector<int>vec 然后使用各类函数的效果如下:

    函数名     --->      用法       --->      效果
    

    push_back() —> vec.push_back(val) —> 在末尾插入值
    pop_back() —> vec.pop_back() —> 末尾弹出一个值
    注意:向量容器的成员函数pop_back()可以删除最后一个元素,而函数erase()可以删除由一个iterator指出的元素,也可以删除一个指定范围的元素。
    还可以采用通用算法remove()来删除vector容器中的元素,不同的是,采用remove一般情况下不会改变容器的大小,而pop_back()与erase()等成员函数会改变容器的大小。
    insert() —> vec.insert(vec.begin(),val) —> 在开头插入值
    insert() —> vec.insert(vec.end(),val) —> 在末尾插入值
    insert() —> vec.insert(vec.end(),temp.begin(),temp.end()) —> 在末尾插入整段的值
    sort() —> sort(vec.begin(),vec.end()) —> 进行排序

string的用法及相关函数

  1. 变量的声明

    string 可以直接声明一个变量

  2. 函数的使用

(1) str.find(‘a’)函数:直接通过str变量调用,找到返回字符所在的位置,找不到返回-1。
或者str.find(‘a’,5)函数:从字符串str下标5开始的位置,查找字符‘a’。

(2)str.rfind(‘a’)函数:从str中找出最后一次出现‘a’的位置,查找失败返回string::npos

(3)str.substr(0,5)函数:获取str从0位置开始长度为5的子字符串

扫描二维码关注公众号,回复: 1074268 查看本文章

(4)string 类型可以直接进行加减,或者str+=s;在字符串后面进行加减;还可以直接进行sort(str.begin(),str.end())

(5)isalpha(‘a’)可以直接判断字符是否是字母,非常好用

(6) vector<string>temp 可以用来对字符串进行划分,然后按次序输出,比较好用。

(7) stoi("123")字符串转换为整数非常的方便。这个函数可以直接使用

猜你喜欢

转载自blog.csdn.net/u011268787/article/details/78695051