北方民族大学程序设计语言课件第九章 容器类.pptVIP

  • 2
  • 0
  • 约1.69万字
  • 约 57页
  • 2019-05-06 发布于广东
  • 举报

北方民族大学程序设计语言课件第九章 容器类.ppt

(续) coutPosition error!endl; return false; } if(length=MAXSIZE) { coutOverflow!endl; return false; } for(i=length;ipos+1;i--){//pos+1后面元素依次后移 element[i]=element[i-1]; //使用Array数组的“[]”运算符重载 } element[pos+1]=value;//新元素插入pos+1位置 length++;//表长自增 return true; } else{//空表时的插入过程 if(pos!=0) { coutInvalid position!endl; return false; } element[0]=value; //使用Array数组的“[]”运算符重载 (续) length++; return true; } } //删除线性表中的指定位置元素: bool List::DeleteElement(int pos) { int i; if(!IsEmpty())//线性表状态判断 { if(pos0||poslength-1) { coutInvalid position!endl; return false; } for(i=pos;ilength-1;i++) element[i]=element[i+1];//使用Array数组的“[]”运算符重载 length--; return true; } return false; } //获取线性表指定位置的元素值 bool List::GetElement(int pos, int value) { if(!IsEmpty())//线性表状态判断 { if(pos0||poslength-1) { coutInvalid position!endl; return false; } value=element[pos];//使用Array数组的“[]”运算符重载 return true; } return false; } //设置线性表指定位置元素值 bool List::SetElement(int pos,int value) { if(!IsEmpty())//若线性表不空 { if(pos0||poslength-1) (续) { coutInvalid position!endl; return false; } element[pos]=value; //使用Array数组的“[]”运算符重载 return true; } return false; } //清空线性表 void List::Clear() { if(!IsEmpty()) { length=0; } } //判断线性表是否为空 bool List::IsEmpty()const { return (length==0); } (续) //判断线性表是否为满 bool List::IsFull()const { return (length==MAXSIZE); } //获取线性表有效元素个数(表长) int List::GetLength()const { return length; } //测试线性表 int main() { List l(200);//构造一个有200个元素空间的空线性表表 int i,value,length; l.InsertAfter(0,0);//插入表头元素 for(i=1;i10;i++)//依次插入其他元素 l.Insert(i-1,i*i); length=l.GetLength();//获取当前表长 for(i=0;ilength;i++) //输出线性表各元素 (续) { l.GetElement(i,value); coutvalue; if(i!=length-1) cout”-”; } coutendl; return 0; } //源程序结束 0-1-4-9-16-25-36-49-64-81 程

文档评论(0)

1亿VIP精品文档

相关文档