#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 10 // 存储空间最大存储10个元素
#define SUCCESS 1
#define ERROR 0
typedef int ElementType;
typedef int Status;
typedef struct {
ElementType data[MAXSIZE];
int length;
} SqList;
/**
* 初始化顺序存储的链表
* 要想按引用传递指针的值,应该使用二级指针(也就是传递指针的地址)
*
* @param list SqList**
* @return Status
*/
Status initSqList(SqList** list) {
*list = (SqList*) malloc(sizeof(SqList));
if (NULL == list) {
return ERROR;
}
// 初始化链表中所有元素的值
for (int i = 0; i < MAXSIZE; i++) {
(*list)->data[i] = 0;
}
(*list)->length = 0;
return SUCCESS;
}
/**
* 向顺序存储的链表尾部插入元素
*
* @param list SqList*
* @param element ElementType
* @return Status
*/
Status appendElement(SqList* list, ElementType element) {
if (list->length >= MAXSIZE) {
return ERROR;
}
list->data[list->leng
用数组实现的单链表[C语言]
最新推荐文章于 2024-09-19 15:02:24 发布
本文介绍了一种使用数组模拟实现单链表的方法,包括初始化、插入、删除、获取元素等操作。通过定义一个包含数组和长度的结构体来表示顺序存储的链表,并提供了相应的函数实现各种链表操作。
摘要由CSDN通过智能技术生成