链表的初始化c语言

更新时间:2023-07-23 23:20:23 阅读: 评论:0

链表的初始化c语言
链表是一种常用的数据结构,它由一系列节点组成,每个节点包含数据域和指针域。C语言中,链表的初始化可以通过创建一个指向链表头节点的指针,并将其初始化为空,然后再向链表中插入节点来完成。
链表的初始化主要包括以下几个步骤:
1. 创建一个指向链表头节点的指针,并将其初始化为空。
```
    struct ListNode {
        int val;
        struct ListNode *next;
    };
   
    struct ListNode* initList() {
        return NULL;
efta    }
```
2. 向链表中插入节点。在C语言中,可以通过定义一个新的节点,然后将其指针域指向链表中的下一个节点,同时将当前链表节点的指针域指向新节点来实现。
```
    struct ListNode* inrtList(struct ListNode* head, int val) {
        struct ListNode* newNode = (struct ListNode*)malloc(sizeof(struct ListNode));
        newNode->val = val;
上海商务英语培训
        newNode->next = head;
        return newNode;
    }
```
3. 遍历链表。链表的遍历是指从链表头节点开始,依次访问链表中每个节点的数据并输出。在C语言中,可以使用while循环来遍历链表,并使用指针变量来指向当前节点。
```
    void traverList(struct ListNode* head) {
theshow        struct ListNode* p = head;
        while (p != NULL) {
            printf("%d ", p->val);
            p = p->next;
        }
gofar
    }
```
完整的链表初始化代码如下:
```
#include <stdio.h>
#include <stdlib.h>
struct ListNode {
    int val;
系统设计说明书    struct ListNode *next;
补贴英语
};
struct ListNode* initList() {
    return NULL;
}
struct ListNode* inrtList(struct ListNode* head, int val) {
    struct ListNode* newNode = (struct ListNode*)malloc(sizeof(struct ListNode));
    newNode->val = val;
    newNode->next = head;
    return newNode;
}
void traverList(struct ListNode* head) {
ldh
    struct ListNode* p = head;
    while (p != NULL) {
        printf("%d ", p->val);
        p = p->next;
    }
}
泰国宣布进入紧急状态int main() {
    struct ListNode* head = initList();
    head = inrtList(head, 1);
    head = inrtList(head, 2);
    head = inrtList(head, 3);
    traverList(head);
    return 0;
大学英语三级真题}
```
这段代码中,我们先创建了一个空链表,然后向链表中插入了三个节点,并使用遍历函数输出了链表中每个节点的数据。

本文发布于:2023-07-23 23:20:23,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/90/186720.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:链表   节点   指针   指向   遍历   使用
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图