//求链表长度
#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语言中,链表节点...
数据结构 初始化链表,插入删除节点,遍历链表,链表长度,找出中间节点
// 输出链表长度 } ``` 在这个函数中,我们首先创建了一个整型变量`i`来记录遍历过的节点数,初始值为0。然后定义了两个`node<T>`类型的指针`head`和`p`,`head`通常由外部传入,表示链表的起始位置,而`p`将用来...
本主题聚焦于顺序链表(单链表)的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->next; // p指向第一个元素 int length = 0; while (p != NULL) { length++; p = p->next; } return length; } ```...
初始化链表、清空链表、求链表长度、检查链表是否为空、获取指定位置元素、遍历链表、查找元素、插入元素、删除元素等都是对单链表的基本操作,这些功能在程序1中都有实现。 此外,实验还涉及到循环链表和双链表。...
2. **求长度**:求链表长度是遍历整个链表并计数的过程。从头节点开始,每次遇到一个节点就增加计数器,直到遇到尾节点(其后继指针为NULL)。 3. **显示**:显示链表的内容通常涉及从头节点开始遍历链表,依次打印...
### 求链表长度 计算链表的长度同样需要遍历整个链表: ```c int getLength() { int length = 0; ListNode* temp = head; while (temp != NULL) { length++; temp = temp->next; } return length; } ``` ...
5. **求链表长度**:`LinkedListLength()`函数返回链表中的结点数量,即链表的长度。 6. **查找元素**:`LinkedListGet()`函数根据给定索引查找元素,若找到返回1,否则返回0。 7. **查找元素位置**:`...
链表的递归操作(添加求最大值和链表长度).cpp
- 思路1:时间复杂度O(2n),先求链表长度再定位,两次遍历。 - 思路2:时间复杂度O(n),使用两个指针同步移动,保持距离为4。 - 思路3:时间复杂度O(n),使用固定大小的数组记录每4个节点,遍历结束后找到目标。 ...
在这个“头插法、尾插法、链表长度test_c-master.zip”压缩包中,我们可以推测包含的是关于链表操作的C语言实现,主要涉及了链表的头插法和尾插法以及如何计算链表的长度。 首先,让我们详细探讨一下链表中的头插法...
这种方法的关键在于,由于两个链表长度不同,较短的链表会在相遇点之前到达终点,然后较长的链表会继续循环,直到两个指针再次相遇。 在实现这些算法时,需要注意几个关键点: 1. 处理空链表的情况,即两个链表没有...
通过学习如何在Java中实现单链表,包括获取链表长度的方法,你可以更好地理解和运用数据结构,这对于编写高效且优化的代码至关重要。在实际编程中,结合实际场景选择合适的数据结构,将有助于解决各种问题。
[求链表长度](图片链接) ##### 检查链表是否为空 ![检查链表是否为空](图片链接) ##### 遍历链表 ![遍历链表](图片链接) ##### 从链表中查找元素 ![从链表中查找元素](图片链接) ##### 向链表中插入元素 !...
3. **求链表长度** 链表的长度可以通过从头节点开始遍历,每次遍历到一个节点,计数器加一,直到到达链表末尾。最后,计数器的值就是链表的长度。 4. **插入节点** 插入节点可以是在链表的开头(头部插入),也...