C++:不重复单词

问题

使用vector和set添加不重复的单词.

C++.
image-2138

源代码

1.使用vector添加不重复的单词.
使用vector添加不重复的单词,比较麻烦,推荐是使用set.


/*************************************************************************
> File Name: test.11.8.cpp
> Author: puruidong
> Mail: 1@w1520.com
> Created Time: 2014年06月30日
************************************************************************/

#include
#include

using namespace std;

/******************************

编写一个程序,在一个vector而不是一个set中保存不重复的单词。使用set的优点是什么.

*******************************/

int main()
{
vector vec;
string pa;
cout << "使用vector保存不重复的单词,请输入单词:" << endl; bool check = false ; while(cin >> pa)
{
check = false;
for(const auto &v : vec)
{
if(v==pa)
{
check=true;
}
}
if(!check)
{
vec.push_back(pa);
}
}
cout << "***********************************" << endl; cout << "下面输出结果:" << endl; for(const auto &vc:vec) { cout << vc << endl; } return 0; }

2.set添加不重复单词.

推荐使用这种方式添加,因为set内保存的本身就属于不重复的元素.

/*************************************************************************
> File Name: test.11.8.1.cpp
> Author: puruidong
> Mail: 1@w1520.com
> Created Time: 2014年06月30日
************************************************************************/

#include
#include
using namespace std;

/********************************

使用set添加元素.

****************************************/

int main()
{
set st;
cout << "向set添加元素[不可重复]:" << endl; string pa; while(cin >> pa)
{
st.insert(pa);
}
cout << "****************************" << endl; cout << "下面输出添加的结果:" << endl; for(const auto &s:st) { cout << s << endl; } return 0; }

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

评论审核已启用。您的评论可能需要一段时间后才能被显示。

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据