#include <iostream>
#define ok 1
using namespace std;
typedef int ElemType;
typedef int status;
//定义单链表
typedef struct LNode
{
ElemType data;
struct LNode *next;
} LNode, *LinkList;
//求表长
int Length(LinkList L)
{
LNode *p = L->next;
int len = 0;
while(p)
{
p = p->next;
len++;
}
return len;
}
//尾插法创建单链表
LinkList CreatList_R(LinkList &L, int n)
{
L = new LNode; //为新结点开辟空间
L->next = NULL; //初始化,结点的Next域置空
LNode *r = L; //尾指针指向头结点
for (int i = 0; i < n; i++)
{
LNode *p = new LNode; //生成新结点
cin >> p->data;
p->next = NULL; //新结点next域置空
r->next = p; //尾结点的next指向新结点p(此时P为新的尾结点)
r = p; //然后将p赋给尾结点r
}
return L;
}
//输出
int DispList(LinkList L)
{
LNode *p = L->next; //令结点P指向链表的首元结点
while (p != NULL) //如果p不为空,说明链表中有元素
{
逆序输出单链表元素
最新推荐文章于 2024-07-11 22:07:49 发布