链表节点个数统计
要统计链表中的节点个数,只需要遍历整个链表,并在遍历的过程中计数即可。具体实现代码如下:(仍然使用C#)
先定义一个整型函数(节点个数的返回值一定是整型变量)
int getLinkNodeNum(struct Test *head)
{
int cnt = 0;
while(head != NULL)
{
cnt++;
head = head->next;
}
return cnt;
}
在main函数中调用定义一个ret并调用该函数
int ret=getLinkNodeNum(&t1);
printf("THe node num is %d\n",ret);
编译结果:
在上述代码中,我们定义了一个变量cnt来存储节点个数,然后遍历链表并在每人节点处将cnt加1,最终返回count可得到链表的节点个数。
链表查找
先定义一个搜索函数
int searchLink(struct Test *head,int Data)
{
while(head != NULL)
{
if(head->Data == Data)
{
return 1;
}
head = head->next;
}
return 0;
}
主函数调用该函数
ret = searchLink(&t1,1);
if(ret == 0)
{
printf("no 1\n");
}
else
{
printf("have 1\n");
}
ret = searchLink(&t1,8);
if(ret == 0)
{
printf("no 8\n");
}
else
{
printf("have 8\n");
}
编译结果: