- 顺序表结构定义
-
typedef int seqType; // 定义顺序表数据类型 // 定义顺序表的结构体 typedef struct t_sList { seqType* pbase; // 表基址 int capacity; // 表容量 int size; // 表长度 }mySList;
- 顺序表查找元素是否在表中
-
/** * @brief 功能:查找元素值key是否在表中 \n * @param[in] plist:表结构指针 * @param[in] key:待查找关键字 * @retval ERROR():顺序表不存在,查找失败 * @retval TURE(1):key在表中 * @retval FALSE(0):key不在表中 */ status sList_find(const mySList* plist, seqType key) { if (plist == NULL || plist->pbase == NULL) { return ERROR; } #if 0 // 方法一: int pos = plist->size - 1; while (pos > -1 && plist->pbase[pos] != key) { --pos; } return (pos > -1 ? TRUE : FALSE); #endif // 方法二: return (sList_locate(plist, key) > -1) ? TRUE : FALSE; }// 返回值为-1,0,1,即ERROR,TRUE,FALSE