`

求链表长度

 
阅读更多

//求链表长度
#include<stdio.h>
#include<stdlib.h>
typedef struct No{
int date;
No* next;
} Node;
Node *creat()
{
Node *head=NULL,*p,*tail;
int x;
scanf("%d",&x);
while(x!=-1){
p=(Node*)malloc(sizeof(Node));
p->date=x;
p->next=NULL;
if(head==NULL)
tail=head=p;
else{
tail->next=p;
tail=p;
}
scanf("%d",&x);
}
return head;
}
int count(Node* head)
{
int sum=0;
Node* p=head;
while(p!=NULL){
sum++;
p=p->next;
}
return sum;
}
main()
{
Node *head;
head=creat();
printf("%d/n",count(head));
return 0;
}

分享到:
评论

相关推荐

    数据结构 求链表长度

    本话题将深入探讨如何使用C语言实现求链表长度的功能,并考虑界面友好的交互设计。 首先,我们需要理解链表的基本概念。链表由一系列节点组成,每个节点包含数据部分和指向下一个节点的指针。在C语言中,链表节点...

    初始化链表,插入删除节点,遍历链表,链表长度,找出中间节点

    数据结构 初始化链表,插入删除节点,遍历链表,链表长度,找出中间节点

    计算循环链表长度.doc

    // 输出链表长度 } ``` 在这个函数中,我们首先创建了一个整型变量`i`来记录遍历过的节点数,初始值为0。然后定义了两个`node&lt;T&gt;`类型的指针`head`和`p`,`head`通常由外部传入,表示链表的起始位置,而`p`将用来...

    顺序链表C语言实现代码

    本主题聚焦于顺序链表(单链表)的C语言实现,包括正序创建、逆序创建、输出、删除、插入节点、求链表长度以及合并链表等操作。 1. **链表的基本概念**:链表由一系列节点组成,每个节点包含数据和指向下一个节点的...

    链表(创建,清空,删除元素,求长度,插入元素)

    求链表长度 4.检查链表是否为空 5.检查链表是否为满 6.遍历链表(设为输出元素7.从链表中查找元素 8.从链表中查找与给定元素值相同的元素在表中的位置 9.向链表中插入元素 10. 从链表中删除元素 其他键退出。。。...

    数据结构实验 顺序表和链表

    5. 求链表长度:ListLength 函数用于获取链表的长度。 6. 输出链表:DispList 函数用于输出链表的元素。 7. 获取元素:GetElem 函数用于获取链表中第 i 个元素值。 8. 插入元素:ListInsert 函数用于插入链表中的第 ...

    递归求链表中最大值、平均值、节点数

    递归函数会接收当前节点和累计的节点数,返回到前一个节点时,累计的节点数就是链表的长度。 3. **求所有整数平均值**: 要计算平均值,我们需要先知道所有节点的总和和节点数。可以创建一个递归函数,同时计算...

    线性链表课件(经典呢!)

    例如,以下是一个求链表长度的方法: ```cpp int LinkList::ListSize() { LNode *p = head-&gt;next; // p指向第一个元素 int length = 0; while (p != NULL) { length++; p = p-&gt;next; } return length; } ```...

    很好的链表表实验报告要求和设计

    初始化链表、清空链表、求链表长度、检查链表是否为空、获取指定位置元素、遍历链表、查找元素、插入元素、删除元素等都是对单链表的基本操作,这些功能在程序1中都有实现。 此外,实验还涉及到循环链表和双链表。...

    danlianbiao.rar_单链表的操作_链表降序

    2. **求长度**:求链表长度是遍历整个链表并计数的过程。从头节点开始,每次遇到一个节点就增加计数器,直到遇到尾节点(其后继指针为NULL)。 3. **显示**:显示链表的内容通常涉及从头节点开始遍历链表,依次打印...

    单链表的创建,插入,删除,查找,求长度

    ### 求链表长度 计算链表的长度同样需要遍历整个链表: ```c int getLength() { int length = 0; ListNode* temp = head; while (temp != NULL) { length++; temp = temp-&gt;next; } return length; } ``` ...

    链表实验报告1.doc

    5. **求链表长度**:`LinkedListLength()`函数返回链表中的结点数量,即链表的长度。 6. **查找元素**:`LinkedListGet()`函数根据给定索引查找元素,若找到返回1,否则返回0。 7. **查找元素位置**:`...

    链表的递归操作(添加求最大值和链表长度).cpp

    链表的递归操作(添加求最大值和链表长度).cpp

    链表的操作

    - 思路1:时间复杂度O(2n),先求链表长度再定位,两次遍历。 - 思路2:时间复杂度O(n),使用两个指针同步移动,保持距离为4。 - 思路3:时间复杂度O(n),使用固定大小的数组记录每4个节点,遍历结束后找到目标。 ...

    头插法、尾插法、链表长度test-c-master.zip

    在这个“头插法、尾插法、链表长度test_c-master.zip”压缩包中,我们可以推测包含的是关于链表操作的C语言实现,主要涉及了链表的头插法和尾插法以及如何计算链表的长度。 首先,让我们详细探讨一下链表中的头插法...

    两个链表求交集(链表基础练习)

    这种方法的关键在于,由于两个链表长度不同,较短的链表会在相遇点之前到达终点,然后较长的链表会继续循环,直到两个指针再次相遇。 在实现这些算法时,需要注意几个关键点: 1. 处理空链表的情况,即两个链表没有...

    基于Java实现的单链表基本操作之获取链表长度.zip

    通过学习如何在Java中实现单链表,包括获取链表长度的方法,你可以更好地理解和运用数据结构,这对于编写高效且优化的代码至关重要。在实际编程中,结合实际场景选择合适的数据结构,将有助于解决各种问题。

    链表基本操作实验报告.doc

    [求链表长度](图片链接) ##### 检查链表是否为空 ![检查链表是否为空](图片链接) ##### 遍历链表 ![遍历链表](图片链接) ##### 从链表中查找元素 ![从链表中查找元素](图片链接) ##### 向链表中插入元素 !...

    c语言 单链表的各个功能

    3. **求链表长度** 链表的长度可以通过从头节点开始遍历,每次遍历到一个节点,计数器加一,直到到达链表末尾。最后,计数器的值就是链表的长度。 4. **插入节点** 插入节点可以是在链表的开头(头部插入),也...

Global site tag (gtag.js) - Google Analytics