有序表数据元素为整型,输入非递减有序表中各元素(不用排序,输入即有序),将表中多余重复元素删除,并将表输出。
输入描述
- 先输入非递减有序表中元素个数n;
- 再输入n个整数元素,以空格隔开,注意,按有序方式输入;
输出描述
- 输出删除多余重复数据元素后的有序表,元素之间以空格隔开
输入样例
10
1 1 1 2 2 2 2 3 3 4
输出样例
1 2 3 4
代码:
#include <iostream>
using namespace std;
class seqList{
public:
seqList(int a[],int num);
char is_in(int b);
void Print();
private:
int data[20];
int top,signs,num,nums;
};
void seqList::Print(){
for(int i=0;i<nums;i++){
cout<<data[i]<<" ";
}
}
char seqList::is_in(int b){
signs = top;
while(signs!=-1){
if(data[signs--]==b)return 'y';
}
if(signs==-1)return 'n';
}
seqList::seqList(int a[],int num){
this->num=num;char sign;top=-1;nums=0;
for(int i=0;i<num;i++){
sign= is_in(a[i]);
if(sign=='n'){
data[++top]=a[i];
nums++;
}
}
}
int main(){
int a[20];
int anum;
cin>>anum;
int data;
for(int i=0;i<anum;i++){
cin>>data;
a[i]=data;
}
int number;char sign;
seqList A=seqList(a,anum);
A.Print();
}
文章评论