本文实例为大家分享了C++实现简单单向链表的具体代码,供大家参考,具体内容如下
为了练习一下对链表的理解,尝试手动造轮子,实现单向链表的右添加,左添加和删除的功能。
头文件
#pragma once
#include
using namespace std;
struct Node//节点
{
int value;
Node* next;
Node(int a = 0, Node* n = NULL) :value(a), next(n) {}
};
class List
{
priva
问题:给一个单向链表,把它从头到尾反转过来。比如: a -> b -> c ->d 反过来就是 d -> c -> b -> a 。
分析:假设每一个node的结构是: 代码如下:class Node { char value; Node next;}因为在对链表进行反转的时候,需要更新每一个node的“next”值,但是,在更新 next 的值前,我们需要保存 next 的值,否则我们无法继续。所以,我们需要两个指针分别指向前一个节点和后一个节点,每次做完当