题目描述
建立顺序表L,将指定区间的数据从顺序表中删除。假设指定区间是合法数据,无序做合法性判断。测试数据为整型。
输入
第一行是表长n;第二行是表中数据元素;第三行是闭区间。
输出
删除以后的顺序表中的数据元素。
样例输入
10
22 32 11 23 43 59 17 65 45 57
10 20
样例输出
22 32 23 43 59 65 45 57
#include<malloc.h>
#include<iostream>
using namespace std;
typedef struct
{
int data[100];
int length;
}SqList;
void InitList(SqList *&L)
{
L=(SqList*)malloc(sizeof(SqList));
L->length=0;
}
void CreatList (SqList *&L)
{
int k;
cin>>k;
for(int i=0;i<k;i++)
{
cin>>L->data[i];
}
}
void sort(SqList *&L,SqList *&L1)
{
int n,m,p=0;
cin>>n>>m;
for(int i=0;i<L->length;i++)
{
if(L->data[i]>=n&&L->data[i]<=m)
{
continue;
}
L1->data[p]=L->data[i];
p++;
}
}
void DisList(SqList *&L1)
{
for(int i=0;i<L1->length;i++)
{
cout<<L1->data[i]<<" ";
}
}
int main()
{
SqList *L,*L1;
InitList(L);
InitList(L1);
CreatList(L);
sort(L,L1);
DisList(L1);
return 0;
}