首页>>帮助中心>>香港云服务器c语言如何实现单链表的查找

香港云服务器c语言如何实现单链表的查找

2024/10/11 90次

香港云服务器在C语言中,实现单链表查找的方法是遍历链表,逐个检查节点的值,直到找到目标值或到达链表末尾。以下是一个简单的示例:

首先,定义链表节点结构体:

typedef struct Node { int data; struct Node* next; } Node; 

然后,创建一个链表并插入一些节点:

#include <stdio.h> #include <stdlib.h> // 插入节点到链表头部 void insertAtHead(Node** head, int data) { Node* newNode = (Node*)malloc(sizeof(Node)); newNode->data = data; newNode->next = *head; *head = newNode; } int main() { Node* head = NULL; insertAtHead(&head, 3); insertAtHead(&head, 2); insertAtHead(&head, 1); return 0; } 

接下来,实现链表查找功能:

// 查找链表中的目标值 Node* searchList(Node* head, int target) { Node* current = head; while (current != NULL) { if (current->data == target) { return current; } current = current->next; } return NULL; // 如果未找到目标值,返回NULL } 

最后,在main函数中调用searchList函数查找链表中的目标值:

int main() { Node* head = NULL; insertAtHead(&head, 3); insertAtHead(&head, 2); insertAtHead(&head, 1); Node* result = searchList(head, 2); if (result != NULL) { printf("找到目标值: %d\n", result->data); } else { printf("未找到目标值\n"); } return 0; } 

这个示例中,链表包含3个节点,值分别为1、2和3。调用searchList函数查找值为2的节点,将返回该节点。如果查找失败,函数将返回NULL。


一诺网络香港免备案专区,提供「香港增强云服务器」「香港特惠云服务器」两种类型的高可用弹性计算服务,搭载新一代英特尔®至强®铂金处理器,接入CN2低延时高速回国带宽线路,网络访问顺滑、流畅。机房网络架构采用了BGP协议的解决方案可提供多线路互联融合网络,使得不同网络运营商线路的用户都能通过最佳路由实现快速访问。香港云服务器低至29元/月,购买链接:https://www.enuoidc.com/vps.html?typeid=2