C语言数据结构(实现顺序表的查找操作
时间: 2024-09-20 22:15:12 浏览: 43
PTA—C语言数据结构:顺序表.ppt
在C语言中,顺序表是一种简单的数据结构,它通过数组的形式存储元素,每个元素在内存中是连续存放的。查找操作通常包括线性查找(也叫顺序查找),其基本步骤是遍历整个列表,直到找到目标值或遍历完。
以下是顺序表查找操作的简单实现:
```c
#include <stdio.h>
// 定义顺序表节点
typedef struct Node {
int data; // 节点存储的数据
struct Node* next; // 指向下一个节点的指针
} ListNode;
// 顺序表查找函数
ListNode* search(ListNode* head, int target) {
ListNode* current = head;
while (current != NULL) {
if (current->data == target) {
return current; // 找到目标值,返回该节点
}
current = current->next;
}
return NULL; // 如果没找到,返回NULL
}
int main() {
ListNode* list = create_list(); // 假设create_list()函数创建了顺序表
int target = 5;
ListNode* result = search(list, target);
if (result) {
printf("找到了目标值 %d\n", result->data);
} else {
printf("未找到目标值\n");
}
return 0;
}
```
在这个例子中,`search` 函数接受头节点 `head` 和一个目标值 `target`,然后依次检查每个节点的数据,直到找到匹配的目标值或者遍历完整个列表。如果找到,就返回对应节点;如果没有找到,最后返回 `NULL`。
阅读全文