C++链表 复习

本文详细介绍了C++中链表数据结构的实现方法,包括节点定义、信息节点描述及链表创建、数据输入输出的过程。通过具体代码示例展示了如何创建链表头节点,输入数据并遍历输出链表信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

链表

我想要复习关于C++的姿势,但是我好像忘了,最后我发现,我没有。

链表是什么?

就是一个节点连接另一个一样的节点,数据结构结束这个样子的。我的脸表的数据结构也是这个样子的。

节点

  • 描述:这是一个链表节点,里面放的是一个信息,一个指针,指针指向下一个脸表节点。

class Node
{
    //信息节点
public:Info val;
    //下一个节点
public:Node * next;
};

信息节点Info

  • 描述:这是一个信息节点,你的姓名和你的学号

class Info
{
    //姓名
public:string name;
    //学号
public:int id;

    const string &getName() const {
        return name;
    }

    void setName(const string &name) {
        Info::name = name;
    }

    int getId() const {
        return id;
    }

    void setId(int id) {
        Info::id = id;
    }
};

验证方式

  • 描述:三个过程
  • 一个过程是:创建一个链表的头节点
  • 第二个过程:数据输入
    • 创建一个新的链表节点
    • 在创建一个新的链表节点中填充数据
    • 原链表的指针指向新链表
    • 指向原链表的指针指向新链表
  • 第三个过程:数据输出
    • 一个指针指向头节点
    • 输出节点信息
    • 指针指向下一个节点
    • 循环
void getNext()
{
    Node * node = new Node();

    Node * ii ;

    ii = node;

    for (int i =0;i<10;i++) {
        Node * tempNode = new Node();
        tempNode->val.setId(i);
        tempNode->val.setName("1");

        ii->next = tempNode;
        ii = tempNode;
    }

    ii = node;

    for (int i=0;i<10;i++) {
        cout << ii->val.getId() << " " << ii->val.getName() << endl;
        ii = ii->next;
    }

}

主函数

int main() {
    getNext();
    return 0;
}

效果

0 
0 1
1 1
2 1
3 1
4 1
5 1
6 1
7 1
8 1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值