#include<iostream>
#define MAXSIZE 100
using namespace std;
struct Node
{
int data; //结点数据
int next; //指向下一个结点的指针
};
class Static_List
{
private:
Node node[MAXSIZE]; //存放静态链表的结构数组
int free_node; //空闲链表表头
public:
Static_List()
{
node[0].next = -1; //头结点
free_node = 1; //空闲链表第一个结点的位置
for (int i = 1; i < MAXSIZE-1; i++)
node[i].next = i + 1; //构造空闲链表
node[MAXSIZE - 1].next = -1; //空闲链表收尾
}
int Length(); //计算静态链表的长度
int search(int value); //在静态链表中查找具有给定值的结点
int Locate(int i); //在静态链表中查找第i个结点
bool Append(int value); //在静态链表的表尾追加一个新结点
bool Insert(int i, int value); //在静态链表第i个结点后插入新结点
bool Remove(int i); //在静态链表中释放第i个结点
bool IsEmpty(); //判断链表空否
void print_list();
};
int Sta
C++ 静态链表的实现
最新推荐文章于 2024-08-03 21:59:54 发布
本文介绍了如何在C++中实现静态链表的数据结构,包括初始化、计算长度、查找、定位、追加、插入和删除操作。静态链表使用结构数组存储,并通过空闲链表管理节点的分配和释放。
摘要由CSDN通过智能技术生成