首页 > 其他分享 >顺序表-00014-查找元素是否在表中,find

顺序表-00014-查找元素是否在表中,find

时间:2022-12-04 02:44:05浏览次数:39  
标签:顺序 pos find 00014 查找 key 表中 plist

  • 顺序表结构定义
  • 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
    

      

标签:顺序,pos,find,00014,查找,key,表中,plist
From: https://www.cnblogs.com/kxwslmsps/p/16949318.html

相关文章