一.c++中set的用法※
set的特性是,所有元素都會根據元素的鍵值自動排序,set的元素不像map那樣可以同時擁有實值(value)和鍵值(key),set元素的鍵值就是實值,實值就是鍵值。set不允許兩個元素有相同的鍵值。
set的各成員函式列表如下:
begin()–返回指向第乙個元素的迭代器
clear()–清除所有元素
count()–返回某個值元素的個數
empty()–如果集合為空,返回true
end()–返回指向最後乙個元素的迭代器
equal_range()–返回集合中與給定值相等的上下限的兩個迭代器
erase()–刪除集合中的元素
find()–返回乙個指向被查詢到元素的迭代器
get_allocator()–返回集合的分配器
insert()–在集合中插入元素
lower_bound()–返回指向大於(或等於)某值的第乙個元素的迭代器
key_comp()–返回乙個用於元素間值比較的函式
max_size()–返回集合能容納的元素的最大限值
rbegin()–返回指向集合中最後乙個元素的反向迭代器
rend()–返回指向集合中第乙個元素的反向迭代器
size()–集合中元素的數目
swap()–交換兩個集合變數
upper_bound()–返回大於某個值元素的迭代器
value_comp()–返回乙個用於比較元素間的值的函式
開頭
#include#includeusing namespace std;
二.尺取(性質依次往前爬,前面夠了剁掉尾部,接著往前爬)
題目:給出了n個正整數序列(10 < n < 10000),每個正整數都小於或等於10000,以及乙個正整數s (s < 10000 000)。編寫乙個程式來找出序列中連續元素的子串行的最小長度,這些元素的和大於或等於s。
#include #include #define n 100001
int main()
if(sum>=k&&right-left三. 二分法(由中間截開,一半一半查)【※】[遇到題目斟酌斟酌]
四. 單調棧(後進先出的原則)
基本的用法
int main()
sum+=s.size();
s.push(t);
}printf("%lld\n",sum);
return 0;
}
五.
1.map簡介
map是stl的乙個關聯容器,它提供一對一的hash。
•第乙個可以稱為關鍵字(key),每個關鍵字只能在map**現一次;
•第二個可能稱為該關鍵字的值(value);
map以模板(泛型)方式實現,可以儲存任意型別的資料,包括使用者自定義的資料型別。map主要用於資料一對一對映(one-to-one)的情況,map內部的實現自建一顆紅黑樹,這顆樹具有對資料自動排序的功能。在map內部所有的資料都是有序的,後邊我們會見識到有序的好處。比如乙個班級中,每個學生的學號跟他的姓名就存在著一對一對映的關係。
2,map的功能
自動建立key - value的對應。key 和 value可以是任意你需要的型別。
3,使用map
使用map得包含map類所在的標頭檔案
#include //注意,stl標頭檔案沒有副檔名.h
map物件是模板類,需要關鍵字和儲存物件兩個模板引數:
std:mappersonnel;
這樣就定義了乙個用int作為索引,並擁有相關聯的指向string的指標.
為了使用方便,可以對模板類進行一下型別定義,
typedef mapudt_map_int_cstring;
udt_map_int_cstring enummap;
4,map的建構函式
map共提供了6個建構函式,這塊涉及到記憶體分配器這些東西,略過不表,在下面我們將接觸到一些map的構造方法,這裡要說下的就是,我們通常用如下方法構造乙個map:
mapmapstudent;
(多看多回顧)
周記(雜)2023年1月27日
1.unsigned long long 最大的期限 2 64 1 2.回形方陣 include int main printf n if i x 2 k else k if i x 2 x 2 0 k 3.int和void代表的是返回值的型別。int main和void main本質上的區別就是在...
周記(雜)2023年12月23日
1.scanf d t gets 若 t 輸入完後,不能進行回車,回車會導致gets直接輸入完成。即 中間應加上 getchar scanf d t getchar for i 0 i a p z printf c p p printf n 2.函式呼叫完成後,通過return語句返回函式值,若無該...
2023年5月23日技術雜學
1 springmvc 2 如何解決post請求中文亂碼的問題。在web.xml中配置乙個characterencodingfilter過濾器,設定成utf 8 get請求中文引數出現亂碼的解決辦法 修改tomcat配置檔案新增編碼與工程編碼一致,如下 3 mybatis 一對 一 一對多查詢 有聯...