如何删除嵌套在向量中的列表中的元素

泰勒·凯利

我正在使用使用成对列表的向量作为数据结构的单独链接来构建哈希表。我在尝试pair从嵌套在向量中的列表结构中删除a时遇到一些问题这是一个简单的代码http://cpp.sh/8cz4h

这是代码:

// Example program
#include <iostream>
#include <string>
#include <vector>
#include <list>
#include <utility>
using namespace std;

int myhash(const string & k) ;

int main()
{
   vector < list < pair <string, string> > > v;
   v.resize(15);
   string k = "foo";

   //I believe this will take me to the list element I want to iterate over
   for (auto &itr : v[myhash(k)])
   {
     if (itr.first == k)
     {
        //then delete the pair
        v[myhash(k)].erase(itr);
        break;
     }

   }


}

int myhash(const string & k) {
    return k.size() % 15;

}

擦除功能出现错误,说它无法匹配一对对的列表,这对我来说很有意义,我知道这v[myhash(k)].erase(itr);没有多大意义,尽管不确定如何解决。

我认为可以解决问题的方法是类似的方法,v[myhash(k).at(itr)].erase(itr);但我不确定如何导航到列表中的某个位置

谢谢你的帮助。

作为免责声明,我昨天在这里与一个用户聊天时遇到了这个问题,他在这里提出了一个解决方案:http : //cpp.sh/96na5但是,这对我来说似乎有点不知所措,我觉得这里有一个更简单的方法解决方案

萨胡

使用range-for循环时,将获得列表中的项目。std::list没有的版本,erase版本接受要从列表中删除的项目。

代替使用range-for循环,而使用迭代器和普通for循环。

auto& list = v[myhash(k)];
auto iter = list.begin();
auto end = list.end();
for (; iter != end; ++iter )
{
   if (iter->first == k)
   {
      //then delete the pair
      list.erase(iter);
      break;
   }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何删除嵌套在列表中的元组?

来自分类Dev

如何在stl中的向量中访问嵌套在对中的对元素

来自分类Dev

如何从嵌套列表Lisp中删除元素

来自分类Dev

当列表嵌套在R列表中时,如何简洁地命名多个列表的所有元素?

来自分类Dev

如何修复嵌套在ScrollView中的BoxInsetLayout中的包装元素

来自分类Dev

从列表向量中删除元素C ++

来自分类Dev

从列表向量中删除元素C ++

来自分类Dev

如何定位嵌套在HTML / CSS代码中的特定元素?

来自分类Dev

如何在锚元素内垂直对齐文本,该锚元素嵌套在无序列表中

来自分类Dev

如何在锚元素内垂直对齐文本,该锚元素嵌套在无序列表中

来自分类Dev

Python - 嵌套在字典中的列表 - 如何对单个值求和

来自分类Dev

如何序列化嵌套在类中的实例列表?

来自分类Dev

嵌套在词典中的列表的列表理解

来自分类Dev

如何获取嵌套向量中的元素类型?

来自分类Dev

从嵌套列表中删除相似的元素

来自分类Dev

Python从嵌套列表中删除特定元素

来自分类Dev

从嵌套列表C#中删除元素

来自分类Dev

从嵌套列表中删除元素-Python

来自分类Dev

在R中的嵌套列表的特定元素中搜索向量

来自分类Dev

从向量中删除元素

来自分类Dev

映射嵌套在字典中的列表

来自分类Dev

如何从列表中删除元素?

来自分类Dev

如何从向量中删除重复的元素?

来自分类Dev

如何删除向量的特定元素中的空格?

来自分类Dev

如何删除向量的特定元素中的空格?

来自分类Dev

如何从对象向量中删除元素?

来自分类Dev

替换嵌套在列表中的元组中的单个元素-它们是更好的方法吗?

来自分类Dev

根据Python中的元素从嵌套列表中删除子列表

来自分类Dev

如何添加到深深嵌套在字典中的列表中并保持嵌套结构?

Related 相关文章

  1. 1

    如何删除嵌套在列表中的元组?

  2. 2

    如何在stl中的向量中访问嵌套在对中的对元素

  3. 3

    如何从嵌套列表Lisp中删除元素

  4. 4

    当列表嵌套在R列表中时,如何简洁地命名多个列表的所有元素?

  5. 5

    如何修复嵌套在ScrollView中的BoxInsetLayout中的包装元素

  6. 6

    从列表向量中删除元素C ++

  7. 7

    从列表向量中删除元素C ++

  8. 8

    如何定位嵌套在HTML / CSS代码中的特定元素?

  9. 9

    如何在锚元素内垂直对齐文本,该锚元素嵌套在无序列表中

  10. 10

    如何在锚元素内垂直对齐文本,该锚元素嵌套在无序列表中

  11. 11

    Python - 嵌套在字典中的列表 - 如何对单个值求和

  12. 12

    如何序列化嵌套在类中的实例列表?

  13. 13

    嵌套在词典中的列表的列表理解

  14. 14

    如何获取嵌套向量中的元素类型?

  15. 15

    从嵌套列表中删除相似的元素

  16. 16

    Python从嵌套列表中删除特定元素

  17. 17

    从嵌套列表C#中删除元素

  18. 18

    从嵌套列表中删除元素-Python

  19. 19

    在R中的嵌套列表的特定元素中搜索向量

  20. 20

    从向量中删除元素

  21. 21

    映射嵌套在字典中的列表

  22. 22

    如何从列表中删除元素?

  23. 23

    如何从向量中删除重复的元素?

  24. 24

    如何删除向量的特定元素中的空格?

  25. 25

    如何删除向量的特定元素中的空格?

  26. 26

    如何从对象向量中删除元素?

  27. 27

    替换嵌套在列表中的元组中的单个元素-它们是更好的方法吗?

  28. 28

    根据Python中的元素从嵌套列表中删除子列表

  29. 29

    如何添加到深深嵌套在字典中的列表中并保持嵌套结构?

热门标签

归档