Traversing a singly linked list with a dummy header

In this problem you will Implement a function to traverse a singly linked list with a dummy header and output the data field of each node.

Structure description:

The node structure is shown below:

复制代码
typedef struct ListNode {
    int data;
    struct ListNode *next;
} node;

typedef node* position;
typedef position List;

Function definition:

复制代码
void traversal(List L);

The parameter L is a pointer to the dummy header. The function outputs the data field of each node as it traverses the singly linked list.

Test program example:

cs 复制代码
#include <stdio.h>
#include <stdlib.h>

typedef struct ListNode {
    int data;
    struct ListNode *next;
}node;

typedef node* position;
typedef position List;

void traversal(List L);

// The questioner has implemented the createList function.
// This function reads a series of positive integers separated by spaces
// and inserts them into a linked list using the head insertion method.
// Entering -1 indicates the end of input.
// creatgeList函数由题目提供,不需要在本题的答案中实现
List createList();

int main(void)
{
    List L = createList();
    traversal(L);
    return 0;
}

/* Please write the answer here */

Input Specification:

A series of positive integers separated by spaces. Entering -1 indicates the end of input.

Output Specification:

Output the data field of each node in the singly linked list. After each number, output a space.(每个整数后输出1个空格)

Sample Input :

复制代码
9 5 7 2 -1

Sample Output :

复制代码
2 7 5 9 

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

C程序如下:

cs 复制代码
void traversal(List L){ //遍历链表的函数,参数L是指向链表头节点的指针  
    if(L->next ==NULL){//检查该链表是否为空
        return;//如果为空则返回
    }
    L = L->next;//L指向该链表的第一个数据域
    while(L!=NULL){//遍历整个单链表
        printf("%d ", L->data);
        L= L->next;
    }
}
相关推荐
编码追梦人5 分钟前
深耕 Rust:核心技术解析、生态实践与高性能开发指南
开发语言·后端·rust
2301_7720935619 分钟前
KVSTORE_Pain point_tuchuang_ROS2
java·开发语言·1024程序员节
刘火锅22 分钟前
Java 17 环境下 EasyPoi 反射访问异常分析与解决方案(ExcelImportUtil.importExcelMore)
java·开发语言·python
西部风情1 小时前
聊聊连续、递增
java·开发语言
蒙娜丽宁1 小时前
Rust 并发编程进阶:线程模型、通道通信与异步任务对比分析
开发语言·网络·rust
budingxiaomoli1 小时前
算法--滑动窗口(一)
数据结构·算法
又是忙碌的一天1 小时前
java字符串
java·开发语言
Hi202402171 小时前
Qt+Qml客户端和Python服务端的网络通信原型
开发语言·python·qt·ui·网络通信·qml
chxii1 小时前
ISO 8601日期时间标准及其在JavaScript、SQLite与MySQL中的应用解析
开发语言·javascript·数据库
带土11 小时前
6. C语言 共用体及typedef
c语言