#include <set> using namespace std; int main(int argc, char *argv[]){ // some code here }
操作很簡單
可以快速檢查裡面有沒有某個元素
當 Set 裡面東西太多時會拖慢速度
#include <iostream> #include <set> using namespace std; int main(int argc, char *argv[]){ set<int, greater<int> > mySet; mySet.insert(10); mySet.insert(20); mySet.insert(30); mySet.insert(40); mySet.insert(50); cout << "10 " << mySet.count(10) << '\n'; // 1 cout << "20 " << mySet.count(20) << '\n'; // 1 cout << "30 " << mySet.count(30) << '\n'; // 1 cout << "40 " << mySet.count(60) << '\n'; // 0 mySet.erase(20); cout << "20 " << mySet.count(20) << '\n'; // 0 return 0; }
#include <tuple> using namespace std; int main(int argc, char *argv[]){ // some code here }
Tuple let you combine two or more value into one vaiable
make_tuple using namespace std; tuple<double, char, string> get_student(int id) { if (id == 0) return make_tuple(3.8, 'A', "Lisa Simpson"); if (id == 1) return make_tuple(2.9, 'C', "Milhouse Van Houten"); if (id == 2) return make_tuple(1.7, 'D', "Ralph Wiggum"); throw invalid_argument("id"); }
#include <iostream> #include <tuple> using namespace std; int main(int argc, char *argv[]){ // 1 tuple<int, int, int> t1 = {1, 3, 4}; cout << get<0>(t1) << '\n'; // 1 cout << get<1>(t1) << '\n'; // 3 cout << get<2>(t1) << '\n'; // 4 return 0; }