数据结构的题:1、在顺序表中查找第一个比e大的元素的位置
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/16 17:11:43
数据结构的题:1、在顺序表中查找第一个比e大的元素的位置
MyClassLib.cpp文件内容
//
#ifndef _SQLIST_H_H
#define _SQLIST_H_H
#define ListInitSize 10//存储空间的初始分配量
#define ListIncrement 3//存储空间的分配增量
typedef int ElemType;
typedef enum {
OVERFLOW = -1,//内存不足
\x05\x05OK = 0,//正常返回
\x05ERROR = 1,//操作错误
\x05NOFOUND = 2//没有找到
} Status;
class SqList
{
\x05private:
\x05\x05ElemType *elem;//存储空间的基址
\x05\x05int\x05\x05 length;//当前线性表长度
\x05\x05int\x05\x05 listsize;//当前分配的存储容量,以ElemType大小为单位
\x05public:
\x05\x05//初始化一个线性表 SqList(unsigned int n=ListInitSize)
\x05\x05//带默认参数的构造函数(n指定线性表的长度)
\x05\x05SqList(unsigned int n=ListInitSize);
\x05\x05//向一个建立好的线性表:录入数据 void CreateList_Sq(void)
\x05\x05void CreateList_Sq(void);
\x05\x05//获取当前线性表信息,void ListInfo();
\x05\x05void ListInfo();
\x05\x05//对当前线性表排序,void SortList(bool condition)
\x05\x05//condition参数说明:(true:升序,false:降序)
\x05\x05void SortList(bool condition);
\x05\x05//在指定位置插入给定元素 int ListInsert_Sq(ElemType e,int place=1)
\x05\x05//返回值两种:(ERROR:插入位置非法,OK:插入成功)
\x05\x05int ListInsert_Sq(ElemType e,int place=1);
\x05\x05//删除线性表中第i个元素,并用e返回其值 int ListDelete_Sq(int i,ElemType &e)
\x05\x05//返回值两种:(ERROR:删除位置非法,OK:删除成功)
\x05\x05int ListDelete_Sq(int i,ElemType &e);
\x05\x05//在线性表中查找数据e,找到返回其存储下表,否则报错处理 int Location_Sq(ElemType e)
\x05\x05//返回值两种:(NOFOUND:元素不存在,查找失败,OK:查找成功)
\x05\x05int Location_Sq(ElemType e);
\x05\x05//按第一号元素划分线性表 int Part_Sq()
\x05\x05int Part_Sq();
\x05\x05
\x05\x05//返回当前线性表中元素的个数 int GetLength(void)
\x05\x05int GetLength(void);
\x05\x05
\x05\x05//返回线性表的长度(占用空间数)int GetSize(void)
\x05\x05int GetSize(void);
\x05\x05//析构函数
\x05\x05~SqList();
\x05\x05
\x05\x05friend int MergeList_Sq(SqList la,SqList lb,SqList &lc);//将la和lb归并在lc中
};
#endif
//
#ifndef _SQLIST_H_H
#define _SQLIST_H_H
#define ListInitSize 10//存储空间的初始分配量
#define ListIncrement 3//存储空间的分配增量
typedef int ElemType;
typedef enum {
OVERFLOW = -1,//内存不足
\x05\x05OK = 0,//正常返回
\x05ERROR = 1,//操作错误
\x05NOFOUND = 2//没有找到
} Status;
class SqList
{
\x05private:
\x05\x05ElemType *elem;//存储空间的基址
\x05\x05int\x05\x05 length;//当前线性表长度
\x05\x05int\x05\x05 listsize;//当前分配的存储容量,以ElemType大小为单位
\x05public:
\x05\x05//初始化一个线性表 SqList(unsigned int n=ListInitSize)
\x05\x05//带默认参数的构造函数(n指定线性表的长度)
\x05\x05SqList(unsigned int n=ListInitSize);
\x05\x05//向一个建立好的线性表:录入数据 void CreateList_Sq(void)
\x05\x05void CreateList_Sq(void);
\x05\x05//获取当前线性表信息,void ListInfo();
\x05\x05void ListInfo();
\x05\x05//对当前线性表排序,void SortList(bool condition)
\x05\x05//condition参数说明:(true:升序,false:降序)
\x05\x05void SortList(bool condition);
\x05\x05//在指定位置插入给定元素 int ListInsert_Sq(ElemType e,int place=1)
\x05\x05//返回值两种:(ERROR:插入位置非法,OK:插入成功)
\x05\x05int ListInsert_Sq(ElemType e,int place=1);
\x05\x05//删除线性表中第i个元素,并用e返回其值 int ListDelete_Sq(int i,ElemType &e)
\x05\x05//返回值两种:(ERROR:删除位置非法,OK:删除成功)
\x05\x05int ListDelete_Sq(int i,ElemType &e);
\x05\x05//在线性表中查找数据e,找到返回其存储下表,否则报错处理 int Location_Sq(ElemType e)
\x05\x05//返回值两种:(NOFOUND:元素不存在,查找失败,OK:查找成功)
\x05\x05int Location_Sq(ElemType e);
\x05\x05//按第一号元素划分线性表 int Part_Sq()
\x05\x05int Part_Sq();
\x05\x05
\x05\x05//返回当前线性表中元素的个数 int GetLength(void)
\x05\x05int GetLength(void);
\x05\x05
\x05\x05//返回线性表的长度(占用空间数)int GetSize(void)
\x05\x05int GetSize(void);
\x05\x05//析构函数
\x05\x05~SqList();
\x05\x05
\x05\x05friend int MergeList_Sq(SqList la,SqList lb,SqList &lc);//将la和lb归并在lc中
};
#endif
数据结构的题:1、在顺序表中查找第一个比e大的元素的位置
数据结构题目:才用折半查找算法在长度为12的有序表中查找一个元素时,查找成功的平均查找长度为多少?...
数据结构中的顺序表的查找中的哨兵是什么意思?
在Matlab中查找集合中元素的位置
查找的平均长度对长度为4的顺序表进行查找,若第一个元素的概率为1/8,第二个元素的概率为1/4,第三个元素的概率为3/8
在一个长度为n的顺序线性表中顺序查找值为x的元素时,查找成功时平均查找长度为多少
matlab中怎么查找一个向量中第一个非零元素的位置 如P=[0;1;2] 第一个非零元素的位置为2,在mbtlab中怎
判断题:在顺序存储结构中,有时也存储数据结构中元素之间的关系.是错的为什么?
在一个长度为n顺序线性表中顺序查找值为x的元素时,查找的平均长度为
数据结构算法写一非递归算法,该算法在按值严格递增排列的顺序表A[1,n] 采用折半查找方法查找值不大于item 的最大元
几个数据结构判断题:1:数据的逻辑结构说明数据元素之间的顺序关系...
有15个数按小到大的顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数组中第几个元素的值.