weixin_32108927 2015-10-22 07:46 采纳率: 0%
浏览 3580

顺序表上的基本操作实现

求大神补充一下逆置操作,顺便将注释补上。
求问此处return -1;是什么意思?
顺序表上的基本操作实现
时 限: 1000 ms
内存限制: 10000 K
总时限: 3000 ms
描述: 在顺序存储结构实现基本操作:初始化、创建、插入、删除、查找、遍历、逆置、合并运算。

输入: 请输入线性表La的长度:n
a1 a2 a3 ...an(数值有序,为降序)
请输入要插入到线性表La中的数字x和插入的位置i:x i
请输入要删除数字的位置:i
请输入要查找的数字:x
请输入线性表长度:m
b1 b2...bm(数值有序,为升序)
输出: 创建好的线性表La=a1 a2...an
插入一个数字后的线性表a1 a2...an+1
删除一个数字后的线性表a1 a2...an
查找一个输入的数字后如果找到,输出该数字的位置i,如果没有找到,输出"Not found"的信息。
逆置a1 a2...an后的线性表an an-1...a1
合并两个线性表后的线性表
输入样例: 5

14 11 10 9 5

8 4

4

10

4

1 3 6 9

输出样例: 14 11 10 8 9 5
14 11 10 9 5
3
5 9 10 11 14
1 3 5 6 9 9 10 11 14

代码如下:
#include
#include
#include

using namespace std;

class SeqList
{
protected:
int data[1000];
int Size;
public:
SeqList *last;
SeqList()
{
Size=100;
last=NULL;
}
void Input(int n);
void Insert(int x,int i);
void Remove(int i);
int Search(int x);
void Ergodic()
{
sort(data,data+Size);
}
void Union(SeqList &seqlist);
void output();
};
void SeqList::Input(int n)
{
Size=n;
for(int i=0;i {
cin>>data[i];
}
}
void SeqList::Insert(int x,int i)
{
for(int j=Size-1;j>=i-1;j--)
{
data[j+1]=data[j];
}
data[i-1]=x;
Size++;
}
void SeqList::Remove(int i)
{
for(int j=i-1; j {
data[j]=data[j+1];
}
Size--;
}
int SeqList::Search(int x)
{
for(int i=0; i {
if(data[i]==x)
return i+1;
}
return -1;
}
void SeqList::Union(SeqList &seqlist)
{
for(int i=Size; i {
data[i]=seqlist.data[i-Size];
}
sort(data,data+Size+seqlist.Size);
Size+=seqlist.Size;
}
void SeqList::output()
{
for(int i=0; i {
cout }
cout }
int main()
{
SeqList s1,s2;
int n;
cin>>n;
s1.Input(n);
int x,i;
cin>>x>>i;
s1.Insert(x,i);
s1.output();
int a;
cin>>a;
s1.Remove(a);
s1.output();
int y;
cin>>y;
int b=s1.Search(y);
if(b==-1)
cout<<"Not found"< else cout s1.Ergodic();
s1.output();
int m;
cin>>m;
s2.Input(m);
s1.Union(s2);
s1.output();
return 0;
}

  • 写回答

1条回答 默认 最新

  • Robot-S 2015-10-22 07:50
    关注

    #include
    typedef int A;
    const int LIST_INIT_SIZE=100;
    const int LISTINCREMENT=10;
    typedef struct
    {
    A *elem;
    int length;
    int listsize;
    int incrementsize;
    }Sqlist;
    //初始化操作
    void InitList_......
    答案就在这里:顺序表中基本操作的实现
    ----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

    评论

报告相同问题?

悬赏问题

  • ¥15 matlab作业不会写
  • ¥15 eclipse mqtt 消息消费问题
  • ¥15 vue2(标签-chrome|关键词-浏览器兼容)
  • ¥15 python网络流自动生成系统 医学领域
  • ¥15 sql查询仓库里都有什么
  • ¥15 代码的修改,添加和运行完善
  • ¥15 krpano-场景分组和自定义地图分组
  • ¥15 lammps Gpu加速出错
  • ¥15 关于PLUS模型中kapaa值的问题
  • ¥15 关于博途V17进行仿真时无法建立连接问题