跟踪节点被访问的次数
Keeping track of how many times a node has been visited
我研究这个主题已经有一段时间了。我还没有得出一个确切的结论。
如何跟踪双链接列表中节点的访问次数?
例如:
假设我们输入几个节点,每个节点都有一个char类型的值。
用户在要访问的节点中键入值。
用户输入:"b","b"、"c"、"b"answers"a"。
现在"b"已经被访问了三次。
现在,由于b是访问次数最多的节点,您需要将该节点移到前面。
将节点移到前面很容易,但我不知道如何跟踪节点。
任何帮助都将不胜感激。
您可以在节点中添加计数字段,如下所示:-
struct node
{
char alpha;
int count;
struct node *next;
}
另外,定义一个构造函数,将count设置为0。您必须不断地检查计数,以便在每次输入时对链表进行排序。
有一点可以肯定,这将是一个非常糟糕的数据结构选择。
编辑回应评论:-
尝试将其映射到std::priority_queue
,其中优先级将是单词的计数。选择最大堆来实现这一点。或者,为了简单起见,您也可以使用std::multimap<int, string>
(int是计数,string是单词)。
相关文章:
- 如果我只是不访问queue_front节点的子节点,而是将它们推到队列中呢?还是BFS吗
- 编写一个函数来删除单链表中的节点(尾部除外),仅授予对该节点的访问权限
- 类成员函数无法访问同一类的私有结构节点?
- 在C++中删除双向链表的头节点后出现访问冲突异常
- 使用二进制搜索树中的迭代器对象访问左侧节点
- 尝试从单向链表C++中删除单个节点时出现读取访问冲突
- 有没有办法访问C++ Boost rtree 中的非叶节点
- C++:无法访问节点值
- 如何访问链式哈希表链表中的每个节点
- 从链表数组访问节点数据
- 使用访问者设计模式在N- ARY树中重复访问子节点值
- 如何在OMNet++中访问我的模拟的不同节点
- 在节点插件中访问 inspector_agent.h
- 链接列表节点的访问违规:C
- Dijkstra首个节点访问了
- 在图算法中,确定是否访问节点的最佳方法是什么?
- 如何在 <Target> MsBuild 中访问节点外部的项目元数据?
- 递归函数插入二叉搜索树无法按根访问节点
- Assimp访问节点名称时出错
- 访问节点矢量