数据结构上机测试1:顺序表的应用 7.24补

来源:互联网 发布:预算大师软件 编辑:程序博客网 时间:2024/06/04 18:40

数据结构上机测试1:顺序表的应用

Time Limit: 1000MS Memory limit: 65536K

题目描述

在长度为n(n<1000)的顺序表中可能存在着一些值相同的“多余”数据元素(类型为整型),编写一个程序将“多余”的数据元素从顺序表中删除,使该表由一个“非纯表”(值相同的元素在表中可能有多个)变成一个“纯表”(值相同的元素在表中只能有一个)。

输入

第一行输入表的长度n;
第二行依次输入顺序表初始存放的n个元素值。

输出

第一行输出完成多余元素删除以后顺序表的元素个数;
第二行依次输出完成删除后的顺序表元素。

示例输入

125 2 5 3 3 4 2 5 7 5 4 3

示例输出

55 2 3 4 7

提示

用尽可能少的时间和辅助存储空间。

#include <stdio.h>
#include <algorithm>
#include <string.h>
#include <stdlib.h>
#define MAX 1002
using namespace std;
typedef struct
{
    int *elem;
    int length;
}Sq;

void initList(Sq *L)
{
    L->elem = (int *)malloc(MAX*4);
    if( !L->elem )
    {
        exit(-1);
    }
    L->length = 0;
}

void create(Sq *L, int n)
{
    int i;
    for(i = 0;i < n; i++)
    {
        scanf("%d",&L->elem[i]);
    }
    L->length = n;
}

void Del(Sq *L, int m)
{
    int *p,*q;
    p = &L->elem[m];
    for(q = p;q < p + L->length; q++)
    {
        *q = *(q+1);
    }
    L->length--;
}

void locList(Sq *L)
{
    int *p,*q;
    p = L->elem;
    while( p != L->elem + L->length )
    {
        q = p+1;
        while( q != L->elem + L->length )
        {
            if(*q == *p)
            {
                Del(L, (q - L->elem));
                q--;
            }
            q++;
        }
        p++;
    }
}

void display(Sq *L)
{
    int i;
    printf("%d\n",L->length);
    for(i = 0;i < L->length; i++)
    {
        printf(i != L->length - 1 ? "%d " : "%d\n", L->elem[i]);
    }
}

int main()
{
    int n;
    Sq L;
    scanf("%d",&n);
    initList(&L);
    create(&L, n);
    locList(&L);
    display(&L);
    return 0;
}
我终于补完了,好开心啊!

代码菜鸟,如有错误,请多包涵!!
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 qq公告有敏感词怎么办 qq群公告敏感词怎么办 轿车加了假汽油怎么办? 电信4g变成3g怎么办 电信流量超过40g怎么办 联通卡网络信号很差怎么办 电马桶马达坏了怎么办 我这么好看别人看不到怎么办 户口打回原籍不接受怎么办 小电充电宝丢失怎么办 qq连续聊天断了怎么办 胚胎怀疑在切口处怎么办 3D渲染没有材质怎么办 员工拒绝签收员工手册怎么办 二级密码错了三次怎么办 棉签掉到耳朵里怎么办 发财树叶子有黄斑怎么办 翠兰的颈枯萎了怎么办 翠兰主干软了怎么办 花叶子长白色粘粉末怎么办 水培转土培栀子花叶子蔫了怎么办 水冷空调水不循环怎么办 哺乳期乳房一个大一个小怎么办 我喝酒后喂奶了怎么办 磁盘目录不具有读写权限怎么办 玻纤网格布扎手怎么办 模拟城市5细菌太多怎么办 空气风犁叶子卷怎么办 晚上腿比早上粗怎么办 新疆公安边防改革新兵怎么办 专升本没有考上怎么办 摩托车漏检了2年怎么办 19年北京外地车怎么办 汽车遥控钥匙按键坏了怎么办 长安逸动噪音大怎么办 微信设置密码参数错误怎么办 太阳能电加热不加热怎么办 没报到换了工作怎么办 大学最后一年入伍入伍毕业证怎么办 当官不为民做主怎么办 去青海高反了怎么办