//sqlist.h
#ifndef SQLIST_H_H
#define SQLIST_H_H
#define MAXSIZE 20
typedef int ElemType;
using namespace std;
class SqList
{
public:
void InitList();//初始化,建立空线性表L
bool ListEmpty();//表空返回TRUE,否则FALSE
void ClearList();//清空线性表
void GetElem(int i, ElemType *e ); //把i位置元素返回给e
int LocateElem(ElemType e ); //查找e,返回e的位置
void ListInsert(int i,ElemType e ); //位置i插入e
void ListDelete(int i,ElemType *e ); //删除i位置元素,值用e返回
int ListLength(); //返回元素个数
void ShowList();//遍历
private:
ElemType data[MAXSIZE];
int length;
}
#endif
//sqlist.cpp
#include "sqlist.h"
#include
void SqList::InitList()
{
length = 0;
}
bool SqList::ListEmpty()
{
return (0 == length);
}
void SqList::ClearList()
{
length = 0;
}
void SqList::GetElem(int i, ElemType *e)
{
*e = data[i];
}
int SqList::LocateElem(ElemType e)
{
int i = 0;
while(i++ < length)
{
if(data[i] == e)
{
cout<<"Find it."< i)
{
data[len] = data[len - 1];
--len;
}
data[i] = e;
length += 1;
}
void SqList::ListDelete(int i, ElemType *e)
{
int loc = i;
length -= 1;
while(loc < length)
{
data[loc] = data[loc+1];
++loc;
}
}
void SqList::ShowList()
{
int len = 0;
cout<<"Show the List:"<
int main(int argc, char * argv[])
{
int data;
int loc;
int len;
bool bEmpty;
SqList sqlist;
sqlist.InitList();
cout<<"InitList complete!"<
线性表-顺序存储结构
最新推荐文章于 2023-03-29 19:24:40 发布