- 55
- 0
- 约2.34千字
- 约 4页
- 2017-12-31 发布于河南
- 举报
C程序代码-C顺序表类模板seqlistclass
#includestdlib.h
#includeiostream.h
#includeseqlistclass.h
SeqList::SeqList()
{
data=new Type[MAXSIZE];
size=0;
}
SeqList::SeqList(const SeqList l)
{
data=new Type[MAXSIZE];
size=l.size;
for(int i=0;isize;i++)
data[i]=l.data[i];
}
SeqList::~SeqList()
{
delete[]data;
}
void SeqList::Error(const char *c)const
{
coutc;
exit(1);
}
SeqList SeqList::operator=(const SeqList l)
{
size=l.size;
for(int i=0;isize;i++)
data[i]=l.data[i];
return(*this);
}
Type SeqList::operator[](int id) //下标运算符重载
{
coutcall;
if(id0||idsize-1)
Error(id illegal!);
return(data[id]);
}
const Type SeqList::operator[](int id)const//常量型下标运算符重载
{
coutcalling;
if(id0||idsize-1)
Error(id illegal!);
return(data[id]);
}
void SeqList::Insert(int id,const Type item)
{
int i;
if(size==MAXSIZE)
Error(Insert:SeqList is full!);
if(id0||idsize)
Error(Insert:id is out of range!);
for(i=size-1;i=id;i--)
data[i+1]=data[i];
data[id]=item;
size++;
}
void SeqList::InsertRear(const Type item)
{
if(size==MAXSIZE)
Error(InsertRear:SeqList is full!);
data[size]=item;
size++;
}
void SeqList::Erase(int id)
{
int i;
if(size==0) //步骤①
Error(Erase: an empty list!);
if(id0||idsize-1) //步骤②
Error(Erase: id is out of range!);
for(i=id+1;isize;i++) //步骤③
data[i-1]=data[i];
size--;
}
void SeqList::Clear(void)//将元素个数置0,使其成为空表
{
size=0;
}
const Type SeqList::GetData(int id)const
{
if(size==0) //步骤①
Error(GetData:an empty list!);
if(id0||idsize-1) //步骤②
Error(GetData:id is out of range!);
return(data[id]); //步骤③
}
int SeqList::Find(const Type item)const //找到item,返回其下标,否则返回-1
{
int i;
for(i=0;isize;i++)
if(data[i]==item)
break;
return(i==size?-1:i);
}
int SeqList::Size(void)const
{
return(size);
}
bool SeqList::Empty(void)const//判空。判断顺序表是否空
{
return(size==0);
}
bool SeqList::Full(void)const//判满。判断顺序表是否满
{
return(size==MAXSIZE);
}
void SeqList::Swap(int id1,int id2)
{
if(id10||id20||id1
您可能关注的文档
- 英语-阜宁中学2014-2015学年高二上学期第三次阶段检测英语试题.doc
- 阜宁中学2013-2014学年高二上学期期中考试英语试题.doc
- Barricades护栏.doc
- 小学英语方位的表达方式.doc
- 初中一年级下册知识点总结.docx
- 说明书摘要及目录.doc
- Book 3 Unit 1 学生.doc
- 英语问路的表达.doc
- 废弃物管理规范D.doc
- 上册 冀教版英语七年级上册期中试题).doc
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 保障农民工工资支付协调机制和工资预防机制.docx VIP
- (35页PPT)腾讯iOA零信任安全解决方案.pptx
- 供应链管理第章.ppt VIP
- 有机化学醇酚醚.ppt VIP
- 【真题】2025年湖北省公务员考试《申论》试题及答案解析(县乡卷).pdf VIP
- 《2025年人工智能在制造业应用》.docx VIP
- 2018年浙江省杭州市中考科学试卷含答案.docx VIP
- 东北地区自然地理概况课件市公开课一等奖省赛课微课金奖课件.pptx VIP
- Power Up3课后单元测试 - U7 - Unit Test.docx VIP
- EN755-2铝及铝合金挤压杆材,管材及型材 第2部分:机械性能.doc
原创力文档

文档评论(0)