甚麼是STL?
- Standard Template Liberty
- 可以裝資料的容器
- 刻好的模板,方便我們使用
Syllabus
- string
- vector
- stack/queue/deque
- priority_queue
- map
- set
- bitset
string
| |
| string s; |
| |
| |
| cin >>s; |
| getline(cin,s); |
| |
| |
| s[5]; |
| |
| |
| |
| cout<<s.size(); |
| |
| cout<<strlen(s); |
| |
| |
| s.clear(); |
| |
vector
| |
| vector<int> v; |
| vector<char> v[10005]; |
| |
| |
| |
| v.emplace_back(x); |
| |
| v.push_back(x); |
| |
| |
| v.pop_back() |
| |
| |
| for(auto i:v){ |
| |
| } |
| |
| |
| v.size() |
| |
| |
| v.clear(); |
stack
| |
| stack<int> st; |
| stack<char> st; |
| |
| |
| st.push(x); |
| |
| |
| st.top(); |
| |
| |
| st.pop(); |
| |
| |
| st.empty(); |
| |
| |
| st.size() |
queue
| |
| queue<int> qu; |
| |
| |
| qu.push(x); |
| |
| |
| qu.front(); |
| |
| |
| qu.pop(); |
| |
| |
| qu.empty(); |
| |
| |
| qu.size() |
deque
| |
| deque<int> dq; |
| |
| |
| dq.push_back(x); |
| dq.push_front(x); |
| |
| |
| dq.front(); |
| dq.back(); |
| |
| |
| dq.pop_back(); |
| dq.pop_front(); |
| |
| |
| dq.empty(); |
| |
| |
| dq.size() |
priority_queue
| |
| priority_queue<int> pq; |
| |
| |
| pq.push(x); |
| |
| |
| pq.top(); |
| |
| |
| pq.pop(); |
| |
| |
| pq.empty() |
| |
| |
| pq.size() |
map
| |
| map<int,int> mp; |
| |
| |
| mp.insert(x); |
| mp[y]=x; |
| |
| |
| mp[y] |
| mp.begin(); |
| mp.end(); |
| |
| |
| mp.erase(x); |
| |
| |
| |
| |
| mp.count(x) |
| |
| |
| mp.find(x) |
| |
| |
| mp.empty() |
| |
| |
| mp.size() |
set
| |
| set<int> S; |
| |
| |
| S.insert(x); |
| S[y]=x; |
| |
| |
| S[y] |
| S.begin(); |
| S.end(); |
| |
| |
| |
| |
| S.find(x) |
| |
| S.count(x) |
| |
| |
| S.erase(x); |
| |
| |
| S.empty() |
| |
| |
| S.size() |
bitset
| |
| bitset<100010> bt; |
| |
| |
| string str; |
| cin>>str; |
| bt=bitset<100010>(str); |
| |
| |
| bt[5]; |
| |
| |
| bt.reset(); |
| |
| |
| bt.set(); |
| |
| |
| bitset<10> a,b; |
| for(auto &i:a) cin>>i; |
| for(auto &i:b) cin>>b; |
| |
| cout<<a&b<<"\n"; |
| cout<<a|b<<"\n"; |
| cout<<a^b<<"\n"; |
STL大複習 110APCS進階預備班
{"metaMigratedAt":"2023-06-16T20:05:28.954Z","metaMigratedFrom":"YAML","title":"STL大複習","breaks":true,"contributors":"[{\"id\":\"4f67c477-a6ac-4743-a794-5e693b4248d6\",\"add\":18,\"del\":0},{\"id\":\"77be2af8-ce15-4578-9f4d-33dde9879cdc\",\"add\":2142,\"del\":211},{\"id\":\"bafdb37c-3398-4b0c-b651-e39724d20cc3\",\"add\":118,\"del\":202},{\"id\":\"3978a08d-c47c-4560-b04d-dfbd8e71d0a3\",\"add\":20,\"del\":1},{\"id\":\"5bb01a70-36c3-48c5-b395-f94ab50d9e3b\",\"add\":805,\"del\":2}]"}