set
/*数字去重和排序*/ #include<bits/stdc++.h> using namespace std; int main() { set<int >s; int m; while(~scanf("%d",&m)) { s.clear(); int n; for(int i = 0; i < m; i ++) { scanf("%d",&n); s.insert(n); } set<int >::iterator it; printf("%d\n",s.size()); bool first = true; for(it = s.begin();it != s.end();it++) { if(!first) printf(" "); printf("%d",*it); first = false; } printf("\n"); } return 0; }
set 本质是图
还有iteration 迭代器
for(int it = s.begin(); it != s.end(); it++)
{
printf("%d" *it);
}
迭代器就相当于有一个i参与了循环
set的话如果有重复的话自己会删除然后排序,非常非常舒服

浙公网安备 33010602011771号