c++ STL --待定
文章平均质量分 50
STL instruction
Steven548
这个作者很懒,什么都没留下…
展开
-
c++ <set> set()用法
关于set有下面几个问题:(1)为何map和set的插入删除效率比用其他序列容器高?大部分人说,很简单,因为对于关联容器来说,不需要做内存拷贝和内存移动。说对了,确实如此。set容器内所有元素都是以节点的方式来存储,其节点结构和链表差不多,指向父节点和子节点。结构图可能如下:(2)为何每次insert之后,以前保存的iterator不会失效?iterator这里就相当于指向节点的指针,内存没有变,指向内存的指针怎么会失效呢(当然被删除的那个元素本身已经失效了)。相对于vector来说,每一.原创 2021-11-11 12:20:43 · 193 阅读 · 0 评论 -
c++ <iomanip> setw()函数 setfill()函数
setw()默认填充的内容为空格,可以setfill()设置其他字符填充。#include <iomanip>using std::setw;cout<<'s'<<setw(8)<<'a'<<endl;输出s a意思是s后面输出8个字符,其中a占一个字符,剩余7个字符用空格填充setfill()#include <iostream>#include <iomanip>..原创 2021-11-10 12:01:23 · 883 阅读 · 0 评论 -
c++ <bitset> bitset函数
1. bitset 函数原创 2021-10-08 07:54:45 · 2909 阅读 · 0 评论 -
c++ <numeric> accumulate 函数
1.accumulate 函数accumulate定义在#include<numeric>中,作用有两个,一个是累加求和,另一个是自定义类型数据的处理int sum = accumulate(vec.begin() , vec.end() , 42);accumulate带有三个形参:头两个形参指定要累加的元素范围,第三个形参则是累加的初值。accumulate函数将它的一个内部变量设置为指定的初始值,然后在此初值上累加输入范围内所有元素的值。accumulate算法返回累加.原创 2021-10-08 07:49:15 · 656 阅读 · 0 评论 -
c++ <string> memset 函数 strcpy 函数 strcmp函数 strcat函数 strlen函数
1.memset 函数函数作用:在一段内存块中填充某一个给定的值,常用于较大的对结构体和数组的清零操作。代码#include<iostream>//#include"string.h"using namespace std;int main(){ char str[10]; str[9] = 'w'; memset(str,97,9); for(int i=0;i<10;i++){ cout<<str[i]&原创 2021-10-08 07:32:41 · 207 阅读 · 0 评论 -
c++ <vector> 删除元素的方法
删除 vector 容器元素的几种方式函数 功能 pop_back() 删除 vector 容器中最后一个元素,该容器的大小(size)会减 1,但容量(capacity)不会发生改变。 erase(pos) 删除 vector 容器中 pos 迭代器指定位置处的元素,并返回指向被删除元素下一个位置元素的迭代器。该容器的大小(size)会减 1,但容量(capacity)不会发生改变。 swap(beg)、pop_back() 先调用 swap() 函数交换要删除的目原创 2021-10-07 22:01:14 · 8685 阅读 · 0 评论 -
c++ <algorithm> next_permutation,prev_permutation函数
1. next_permutation和prev_permutation区别next_permutation(start,end):求的是当前排列的下一个排列prev_permutation(start,end):求的是当前排列的上一个排列。我们可以把它理解为序列的字典序的前后,abc这个序列有六个可能的排列组合:abc,acb,bac,bca,cab,cba。这些排列组合根据less-than操作符做字典顺序(lexicographical)的排序。也就是说,abc名列第一,因为每一个元素原创 2021-10-07 21:37:17 · 158 阅读 · 0 评论 -
c++ <algorithm> swap 函数 reverse 函数 remove 函数
1. swap()swap(a,b)2. reverse()reverse函数用于反转在[first,last)范围内的顺序,reverse函数没有返回值例子:交换vector容器中元素的顺序vector<int> v = {5,4,3,2,1};reverse(v.begin(),v.end());//v的值为1,2,3,4,5例子:还有string类的字符串string str="www.mathor.top";reverse(str.begin(),.原创 2021-10-07 21:21:21 · 603 阅读 · 0 评论 -
c++ <algorithm> max 函数 min函数,__gcd(x,y)函数
1. max()两个函数的取最大值max(a,b);多个数取最大值max({a,b,c,d,e});2. min() 同理3. min_element()min_element(first,end,cmp);其中cmp为可选择参数!1) 第三个参数cmp可写可不写, max_element() 和 min_element() 默认是从小到大排列,max_element() 输出最后一个值, min_element() 输出第一个值,但是如果自定义的 cmp 函数写的是从.原创 2021-10-07 21:12:28 · 4397 阅读 · 0 评论 -
c++ <algorithm> sort 函数 unique函数
//升序:sort(a,a+20,less<data-type>()); //降序:sort(a,a+20,greater<data-type>()) 1. Sort函数有三个参数:(1)第一个是要排序的数组的起始地址。(2)第二个是结束的地址(最后一位要排序的地址)(3)第三个参数是排序的方法,可以是从大到小也可是从小到大,还可以不写第三个参数,此时默认的排序方法是从小到大排序。sort(a,a+10);代码例子: 从小到大排序#inc..原创 2021-10-07 20:57:05 · 215 阅读 · 0 评论 -
C++ <cstdio> <algorithm> find 函数
1. find()查找第一次出现的目标字符串:如果查找成功则输出查找到的第一个位置,否则返回-1;#include<iostream>#include<cstdio>using namespace std;int main(){string s1 = "abcdef";string s2 = "de";int ans = s1.find(s2) ; //在S1中查找子串S2cout<<ans<<endl;system("pa.原创 2021-10-07 20:45:58 · 244 阅读 · 0 评论 -
c++ 头文件
头文件#include <math.h> -------基本数学算法#include<algorithm> -------精确小数点#include<iostream> --------主文件#include<vector> -------动态数组#include<stack> -------栈的头文件#include<bits/stdc++.h> -----万能头文件...原创 2021-09-25 12:24:23 · 247 阅读 · 0 评论 -
c++ <math.h>round(), floor(),ceil(), fix()
1. round2. floor3. ceil,4. int abs(int i); 处理int类型的取绝对值5. double fabs(double i); //处理double类型的取绝对值6. float fabsf(float i); 处理float类型的取绝对值原创 2021-10-07 20:34:54 · 524 阅读 · 0 评论