资源描述
顺序表的按值删除
#include<iostream>
using namespace std;
const int MaxSize=200;
class SeqList
{
public:
SeqList(int a[],int n);
int Delete(int x);
void PrintList();
private:
int data[MaxSize];
int length;
};
SeqList::SeqList(int a[],int n)
{
int i;
for(i=0;i<n;i++)
data[i]=a[i];
length=n;
}
int SeqList::Delete(int x)
{
int t=0;
for(int i=1;i<=length;i++)
if(data[i-1]==x)
{t=i;
for(;i<length;i++)
data[i-1]=data[i];
length=length-1;
}
return t;
}
void SeqList::PrintList()
{
int i;
for(i=0;i<length;i++)
cout<<data[i]<<" ";
cout<<endl;
}
void main()
{
int a[MaxSize],n,i;
cin>>n;
if(n>MaxSize)
{
cout<<"容量不够."<<endl;
exit(-1);
}
for(i=0;i<n;i++)
cin>>a[i];
SeqList List(a,n);
int m;
cin>>m;
int r=List.Delete(m);
List.PrintList();
cout<<r<<endl;
}
展开阅读全文