摘要: min_element(), max_element(),minmax_element()求容器最小/最大值的迭代器min_element(v.begin(),v.end(),comp);传入比较函数comp时,可以理解为为先按照comp排序,min_element返回第一个值,max_elemen 阅读全文
posted @ 2021-12-07 19:46 80k 阅读(33) 评论(0) 推荐(0)
摘要: 可以利用字典树(前缀树,Trie)解决数与数组中数据异或的最值问题。Trie(发音类似 "try")或者说 前缀树 是一种树形数据结构,用于高效地存储和检索字符串数据集中的键。 这一数据结构有相当多的应用情景,例如自动补完和拼写检查。 阅读全文
posted @ 2021-12-07 19:45 80k 阅读(48) 评论(0) 推荐(0)
摘要: c++ 17标准支持 for (auto& [key, value] : map)vector擦除部分 vec.erase(vec.begin() + k, rec.end());vector用另一vector的一部分初始化 vector<T> v2(v1.begin()+n1,v1.end()-n 阅读全文
posted @ 2021-12-07 19:44 80k 阅读(47) 评论(0) 推荐(0)
摘要: 标准容器的迭代器都支持++、--、==和!=改变vector对象容量的操作会使vector的迭代器失效vector和string的迭代器支持加减运算iter+n;迭代器指示的位置比原迭代器相比向前移动n个元素iter-n;迭代器指示的位置比原迭代器相比向后移动n个元素iter+=n;迭代器加法复合运 阅读全文
posted @ 2021-12-07 19:43 80k 阅读(64) 评论(0) 推荐(0)
摘要: 列表初始化会尽可能地把花括号内的值当成元素初始值来处理,只有无法执行列表初始化时才会考虑其他初始化方式;vector<int> v1{10};//一个元素;vector<int> v2{10,2};//两个元素vector<string> v5{"hi"};//一个元素"hi",列表初始化vecto 阅读全文
posted @ 2021-12-07 19:43 80k 阅读(32) 评论(0) 推荐(0)
摘要: string的操作。 string s; os<<s;//s写到输出流os,返回osis>>s;//is中读取字符串赋给s,字符串以空白分割(包括空格),返回isgetline(is,s);//从is中读取一行赋给s,返回is,注意会读取进换行符,但不存储换行符。s1+s2;//字符串连接字面值和字 阅读全文
posted @ 2021-12-07 19:42 80k 阅读(30) 评论(0) 推荐(0)
摘要: 头文件不应包含using声明 阅读全文
posted @ 2021-12-07 19:40 80k 阅读(19) 评论(0) 推荐(0)
摘要: 函数 nth_element, STL中实现的快速选择算法,使用时需要包含头文件<algorithm>void nth_element (Iterator first, Iterator first+nth, Iterator last, Compare comp);重新排列range [first 阅读全文
posted @ 2021-12-07 19:39 80k 阅读(42) 评论(0) 推荐(0)
摘要: typedef char *pstring;const pstring cstr=0;//此时cstr为指向char的常量指针const char *cstr=0;//此时cstr为指向char常量的指针 auto一般不保留顶层const,保留底层const,忽略引用。 decltype选择并返回操 阅读全文
posted @ 2021-12-07 19:38 80k 阅读(26) 评论(0) 推荐(0)
摘要: 对于一个普通变量,可以仅在声明时加extern关键字,而定义不需要;extern int i;//声明int i;//声明并定义int i=1;//定义并初始化包含了显式初始化的声明即成为定义;extern double pi=3.1416//定义 对于const变量,默认仅在当前文件有效;若要令c 阅读全文
posted @ 2021-12-07 19:35 80k 阅读(27) 评论(0) 推荐(0)