【问题标题】:Input file into array, unique word将文件输入到数组中,唯一的单词
【发布时间】:2015-07-28 21:08:38
【问题描述】:

我正在创建一个程序来读取歌词、歌曲和艺术家的文件。大约有 100 位艺术家、100 首歌曲和大约 10,000 首独特的歌词。我知道如何将歌词放入数组中;但是我无法将它们限定为独特的。我对 c++ 没有太多经验,我在网上看到的所有关于数组的东西,ifstream 并没有提到太多关于限定数据进入数组的内容。我不是逐字逐句寻找代码,只是寻找一些关于我所缺少的提示或技巧。谢谢!

【问题讨论】:

  • 将它们限定为唯一是什么意思?你不想在数组中存储两次相同的歌词?
  • 正确,我只希望每个单词在数组中出现一次,并且我想在添加时报告元素位置。

标签: c++ arrays input ifstream


【解决方案1】:

执行此操作的常用方法是使用std::map 类。像这样的...

map<string, int> words;
string word;
while (ifstream >> word)
    ++words[word];

此时,您可以通过words 找到值为1 的条目,因为它们只添加了一次(唯一)

【讨论】:

  • 非常感谢您的快速回复!我会玩弄它,看看我能不能让它发挥作用。谢谢!
猜你喜欢
  • 1970-01-01
  • 2014-11-27
  • 2016-08-06
  • 2020-03-21
  • 2020-07-10
  • 2015-06-02
  • 1970-01-01
  • 1970-01-01
  • 2019-07-03
相关资源
最近更新 更多