本关任务:编写一个程序实现顺序表的基本运算。
时间: 2024-11-20 11:41:54 浏览: 7
编写一个完整顺序表的程序
4星 · 用户满意度95%
在编程中,实现顺序表的基本运算是指创建一个数据结构来存储一系列元素,并支持基本的操作如插入、删除和查找等。通常顺序表是通过数组或链表的形式来实现的。下面是一个简单的基于数组的顺序表实现,使用C++为例:
```cpp
#include <iostream>
// 定义顺序表节点
struct ListNode {
int data;
ListNode* next;
};
// 初始化顺序表为空
ListNode* createEmptyList() {
return nullptr;
}
// 插入元素到列表尾部
void insertNode(ListNode*& head, int value) {
ListNode* newNode = new ListNode();
newNode->data = value;
newNode->next = nullptr;
if (head == nullptr) {
head = newNode;
} else {
ListNode* current = head;
while (current->next != nullptr) {
current = current->next;
}
current->next = newNode;
}
}
// 删除指定值的节点
void deleteNode(ListNode*& head, int value) {
if (head == nullptr) {
return;
}
if (head->data == value) {
ListNode* temp = head;
head = head->next;
delete temp;
return;
}
ListNode* current = head;
while (current->next != nullptr && current->next->data != value) {
current = current->next;
}
if (current->next != nullptr) {
ListNode* temp = current->next;
current->next = current->next->next;
delete temp;
}
}
// 查找是否存在某个值
bool searchNode(ListNode* head, int value) {
ListNode* current = head;
while (current != nullptr) {
if (current->data == value) {
return true;
}
current = current->next;
}
return false;
}
int main() {
ListNode* list = createEmptyList();
// ... 对顺序表进行插入、删除和查找操作 ...
return 0;
}
```
阅读全文