把元素放在链表的最后
Putting element last in linked list c++
我想得到一些帮助,我应该如何编写这个add()函数,如何把元素放在列表的最后一个位置。现在看起来是这样的:
我已经编辑了它,现在已经有了我的类:
#include <iostream>
using namespace std;
template <class T>
class List;
template <class T>
class Node {
public:
Node ( T *t) : data(t), next(0) {}
~Node();
private:
T *data;
Node* next;
friend class List<T>;
};
template <class T>
class Predicate {
public:
Predicate() {}
virtual bool operator()( const T& v) = 0;
};
template <class T>
class List {
public:
List() : first(new Node<T>(T())) {} //"dummy"-nod först
void add( T *t );
void remove_if( T t );
void remove_if( Predicate<T> &pred );
void print(); // skriver alla elementen inom "måsvingar"
private:
Node<T> *first;
};
在我的主目录中,我有:
int main()
List<int> intlista;
intlista.add( new int(1) );
intlista.add( new int(2) );
intlista.add( new int(3) );
intlista.add( new int(2) );
intlista.add( new int(4) );
intlista.add( new int(5) );
intlista.add( new int(6) );
从列表的第一个节点开始,跟踪next
节点,直到找到一个为NULL的节点。创建一个新节点,并将其分配给该next
。
然后第一下一步-> ->下一个>>…下一步->空
第一下一步-> ->下一个>>…下一步-> new_node——零
>
相关文章:
- 仅显示链表的最后一个元素
- C++链表最后一个元素的迭代器?
- C++ 链表程序打印最后一个数据项 n 次
- 链表:最后一个指针不是NULL
- 最后在C++的链表中添加节点
- 链表只打印添加新节点后的最后一个元素
- 链表:无法访问最后一个节点,获取 R6010(C++、VS2010)
- 删除双向链表 (C++) 的最后一个节点
- 打印链表仅打印最后一个节点
- 链表在c++中从最后到第一显示
- 如何删除C++中添加到链表中的最后一个元素
- 删除单向链表最后一个元素的递归方法
- 在双链表中最后追加或插入
- 从链表c++中删除最后一个节点
- 更新指向链表中最后一个节点的指针
- 把元素放在链表的最后
- 使用递归在单个链表中查找第n到最后一个节点
- 最后一个人站着,使用了圆形链表
- 使用单个how循环从给定的单个链表中打印最后第三个元素
- 链表删除最后一个节点c++