计算带头结点单链表的长度 计算单链表的长度,实现单链表的打印
2014-05-08 20:39
381 查看
计算单链表的长度 计算单链表的长度,实现单链表的打印
实现单链表的建立
链表节点的定义:
typedef struct node
{
int data;//节点内容
node *next;//下一个节点
}
创建单链表
node *Create()
{
int i=0;//链表中数据个数
node *head,*p,*q;
int x=0;
head=(node*)malloc(sizeof(node));//创建头结点
while(1)
{
printf("input the data:");
scanf("%d",&x);
if(x==0)
break;//Data为0时创建结束
p=(node*)malloc(sizeof(node));
p->data=x;
if(++i==1)
{
head->next=p;//连接到head的后面
}
else
{
q->next=p;//连接到链表尾端
}
q=p;
q->next=NULL;//链表的最后一个指针为NULL
return head;
}
}
编程实现单链表的测长:
返回单链表的长度
int length(node *head)
{
int len=0;
node *p;
p=head->next;
while(p!=NULL)
{
len++;
p=p->next;
}
return len;
}
实现单链表的打印
void print(node *head)
{
node *p;
int index=0;
if(head->next==NULL)//链表为空
{
printf("link is empty\n");
return;
}
p=head->next;
while(p!=NULL)
{
printf("the %dth node is:%d\n",++index,p->data);
p=p->next;
}
}
实现单链表的建立
链表节点的定义:
typedef struct node
{
int data;//节点内容
node *next;//下一个节点
}
创建单链表
node *Create()
{
int i=0;//链表中数据个数
node *head,*p,*q;
int x=0;
head=(node*)malloc(sizeof(node));//创建头结点
while(1)
{
printf("input the data:");
scanf("%d",&x);
if(x==0)
break;//Data为0时创建结束
p=(node*)malloc(sizeof(node));
p->data=x;
if(++i==1)
{
head->next=p;//连接到head的后面
}
else
{
q->next=p;//连接到链表尾端
}
q=p;
q->next=NULL;//链表的最后一个指针为NULL
return head;
}
}
编程实现单链表的测长:
返回单链表的长度
int length(node *head)
{
int len=0;
node *p;
p=head->next;
while(p!=NULL)
{
len++;
p=p->next;
}
return len;
}
实现单链表的打印
void print(node *head)
{
node *p;
int index=0;
if(head->next==NULL)//链表为空
{
printf("link is empty\n");
return;
}
p=head->next;
while(p!=NULL)
{
printf("the %dth node is:%d\n",++index,p->data);
p=p->next;
}
}
相关文章推荐
- 计算带头结点单链表的长度 计算单链表的长度,实现单链表的打印
- Java实现单链表的插入、删除、计算链表的长度和输出链表
- C语言实现单链表(带头结点)的基本操作(创建,头插法,尾插法,删除结点,打印链表)
- 删除不带头结点的单链表的非尾结点&&逆序打印单链表
- C语言实现单链表(带头结点)的基本操作(创建,头插法,尾插法,删除结点,打印链表)
- 单链表的遍历与长度计算(单链表)
- 带头结点的链表尾插法C++实现
- c语言实现--不带头结点的单链表操作
- C语言实现带头结点的链表的创建、查找、插入、删除操作
- 《数据结构》将一个带头结点的单链表分解成两个单链表
- 经典算法学习——单链表实现冒泡排序(带头结点)
- 单链表 、带头结点的单链表、循环链表 及其实现
- C语言:单链表的实现(包括:尾插、尾删、头插、头删、指定位置插入、长度、打印)
- 合并两个单链表,其中包括尾插法建表、计算单链表长度、输出单链表,给出完整代码
- 数据结构(四)——单链表 、带头结点的单链表、循环链表 及其实现
- 不带头结点的单链表反转 三种不同方法实现
- 数据结构 P38 算法实现 在带头结点的单链表的第i个元素插入元素e
- 单链表中头结点的有无. 并讨论下有无头结点在单链表的创建,打印,插入,逆置,删除中的区别.
- 不带头结点的单链表的实现(C语言)
- C实现头插法和尾插法来构建单链表(不带头结点)