c++ - 计算已排序文本文件 C++ 中的重复次数
问题描述
我有一个看起来像这样的文件:
a
a
a b b c d d d
_
我正在使用 fstream 和 sstream 来读取它,我想要实现的是通过它来计算单个元素重复的次数,所以我可以将一个节点添加到 BST 中,并以重复计数作为其键。
我希望实现这样的目标:
myBST.insert("a", 4);
myBST.insert("b", 2);
myBST.insert("c", 1);
myBST.insert("d", 3);
我尝试使用新的 sstream 创建一个 while 循环,主循环在其中找到一个元素,计算新 sstream 读取的值与原始 sstream 相同的次数,但它似乎不起作用:
if (!datos.is_open())
{
cout << "failed to open";
}
string line;
while (getline(datos, line))
{
stringstream ss(line);
int count = 0;
string line2 = line;
stringstream ss2(line2);
while (line2 == line)
{
stringstream ss2(line2);
count++;
}
}
return 0;
任何帮助表示赞赏:)
解决方案
推荐阅读
- java - Java:如何操作大集合?
- reactjs - 反应材料下拉大小
- css - 悬停列表项时菜单消失
- javascript - 在 Asp.NetCore 中的 javascript 中调用 index.cshtml PageModel 中的方法
- android - 如何分别从android图库中选择多个图像
- php - 除非服务器以“php -S localhost:8000”启动,否则 htdocs(XAMPP) 中的 PHP 项目将不会运行
- vulkan - 关于 Vulkan VkSubpassDependency 成员的问题
- reactjs - 如何使用 Socket-IO 上传图像文件并做出反应?
- javascript - 使用 JS 正则表达式匹配所有表达式
- react-native - 带有 fontello 的自定义图标不起作用 React Native