zoukankan      html  css  js  c++  java
  • 集合:set

    set 就是数学上的集合——每个元素最多只出现一次。和sort一样,自定义一个类型也可以构造set ,但是必须定义“小于”运算符。

    例子:

          输入一个文本,找出所有不同的单词(连续的字母序列),按字典从小到大排序,然后输出,不区分大小写。

    #include<iostream>
    #include<sstream>
    #include<string>
    #include<set>
    using namespace std;

    set<string>dict;//建立一个叫“dict”的string 集合

    int main()
    {
     string s,buf;
     while(cin>>s)
     {
      for(int i=0;i<s.size();i++)
      {
       if(isalpha(s[i]))
       {
        s[i]=tolower(s[i]);
       }
       else
       s[i]=' ';
      }
      stringstream ss(s);
      while(ss>>buf)
      dict.insert(buf);
     }
     for(set<string>::iterator it=dict.begin();it!=dict.end();it++)//iterator的意思是迭代器,类似于指针。
     cout<<*it<<endl;
     return 0;
     }

  • 相关阅读:
    文件输入输出
    快速幂
    Vijos1512 SuperBrother打鼹鼠
    P2564 生日礼物
    P1886 滑动窗口
    P1540 机器翻译
    TYVj1939 玉蟾宫
    P1988 最大数
    二分图匹配
    [GDOI2017集训&做题记录&日记]
  • 原文地址:https://www.cnblogs.com/ouyang_wsgwz/p/6486478.html
Copyright © 2011-2022 走看看