- 顺序表结构定义
-
typedef int seqType; // 定义顺序表数据类型 // 定义顺序表的结构体 typedef struct t_sList { seqType* pbase; // 表基址 int capacity; // 表容量 int size; // 表长度 }mySList;
- 顺序表头删法
-
/** * @brief 功能:头删 \n * @param[in] plist:表结构指针 * @retval OK(1):删除成功 * @retval ERROR(0):顺序表不存在,删除失败 * @retval FALSE(0):表为空,删除失败 */ status sList_pop_front(mySList* plist) { if (plist == NULL || plist->pbase == NULL) { return ERROR; } if (plist->size == 0) { return FALSE; }// 表空,不可删除 for (int i = 1; i < plist->size; ++i) { plist->pbase[i - 1] = plist->pbase[i]; } plist->size--; return OK; }
- 顺序表尾删法
-
/** * @brief 功能:尾删 \n * @param[in] plist:表结构指针 * @retval - OK(1):删除成功 * @retval ERROR():顺序表不存在,不可操作 * @retval FALSE(0):删除失败:表为空无须删除 */ status sList_pop_back(mySList* plist) { if (plist == NULL || plist->pbase == NULL) { return ERROR; } if (plist->size == 0) { return FALSE; }// 表空,不可删除 plist->size--; return OK; }