最众所周知单链表是408考研常考的一个数据结构考点之一,那么今天给大加分享一下我的学习成果。
今天我学了单链表的创建和读取,采用头插和尾插法可以新建一个单链表,以及打印单链表。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
typedef int ElemType;
typedef struct LNode {
ElemType data;
struct LNode* next;//结构体指针,指向下一个结点
}LNode,*LinkList;
//头插法新建链表
LinkList CreatList_head(LinkList& L)
{
LinkList s;
int x;
L = (LinkList)malloc(sizeof(LNode));
L->next = NULL;
scanf("%d", &x);
while (x != 9999)
{
s = (LinkList)malloc(sizeof(LNode));
s->data = x;
s->next = L->next;
L->next = s;
scanf("%d", &x);
}
return L;
}
//尾插法新建链表
LinkList CreatList_trail(LinkList& L)
{
int x;
L = (LinkList)malloc(sizeof(LNode));//申请头节点的空间
LNode* s, * r = L;//LinkList s,r=L;也可以
//r代表链表表尾节点,指向链表尾部
scanf("%d", &x);
while (x!=9999)
{
s = (LNode*)malloc(sizeo