Description
在长度为n(n<1000)的顺序表中可能存在着一些值相同的“多余”数据元素(类型为整型),编写一个程序将“多余”的数据元素从顺序表中删除,使该表由一个“非纯表”(值相同的元素在表中可能有多个)变成一个“纯表”(值相同的元素在表中只能有一个)。
Input
第一行输入表的长度n;
第二行依次输入顺序表初始存放的n个元素值。
Output
第一行输出完成多余元素删除以后顺序表的元素个数;
第二行依次输出完成删除后的顺序表元素。
Sample
Input
12
5 2 5 3 3 4 2 5 7 5 4 3
Output
5
5 2 3 4 7
Hint
用尽可能少的时间和辅助存储空间。

#include<bits/stdc++.h>using namespace std;#define maxsize 1010typedef struct node
{int *elem;int length;int listsize;
} List;void creat(List &L, int n)
{L.elem = (int *)malloc(maxsize*sizeof(int));for(int i = 0; i < n; i++){scanf("%d", &L.elem[i]);}L.listsize = maxsize;L.length = n;
}
void move_towards(List &L, int j)//删除顺序表中的一个元素,向前移动
{for(int k = j; k < L.length - 1; k++){L.elem[k] = L.elem[k + 1];}L.length--;
}
void del(List &L)
{for(int i = 0; i < L.length; i++){for(int j = i + 1; j < L.length; j++){if(L.elem[i] == L.elem[j]){move_towards(L, j);j--;//很重要,容易忘}}}
}
void display(List &L)
{printf("%d\n", L.length);for(int i = 0; i < L.length - 1; i++)printf("%d ", L.elem[i]);printf("%d\n", L.elem[L.length - 1]);
}
int main()
{int n;List L;scanf("%d", &n);creat(L, n);del(L);display(L);return 0;
}

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

  1. 【1138】数据结构上机测试2-1:单链表操作A(顺序建表+删除节点)(SDUT)

    数据结构上机测试2-1:单链表操作A Time Limit: 1000ms   Memory limit: 4096K  有疑问?点这里^_^ 题目描述 输入n个整数,先按照数据输入的顺序建立一个带头 ...

  2. 逆置单链表c语言程序,(数据结构C语言版)顺序表和单链表的逆置

    <(数据结构C语言版)顺序表和单链表的逆置>由会员分享,可在线阅读,更多相关<(数据结构C语言版)顺序表和单链表的逆置(7页珍藏版)>请在人人文库网上搜索. 1.实验1-1顺序 ...

  3. 数据结构 严薇敏 顺序表的实现(增 删 改)及其使用方法详解

    时间复杂度 数据结构 时间复杂度和空间复杂度 目录 1.线性表 2.顺序表 2.1概念及结构 2.2 接口实现 SeqList.h SeqList.c 2.2.1初始化链表以及销毁链表的实现 初始化顺 ...

  4. 数据结构之python实现顺序表

    数据结构之python实现顺序表 顺序表是指采用顺序存储的方式来存储数据元素的线性表. 初始化以及创建顺序表 class SequenceList(object):def __init__(self) ...

  5. 【1291】数据结构上机测试4.1:二叉树的遍历与应用1 SDUTOJ

     数据结构上机测试4.1:二叉树的遍历与应用1 Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 输入二叉树的先序遍历序列和中序 ...

  6. java数据结构与算法之顺序表与链表深入分析

    转载请注明出处(万分感谢!): http://blog.csdn.net/javazejian/article/details/52953190 出自[zejian的博客] 关联文章: java数据结 ...

  7. 数据结构学习笔记:顺序表的删除操作及其演化题目总结

    目录 前言 例题 类似题目1 类似题目2 类似题目3 类似题目4 类似题目5 结语 前言 文章代码皆在Dev-C++ 5.11中测试,主要是总结一些方法,从而总结一些规律使自己进一步地深化学习内容,仅 ...

  8. 【数据结构】手撕顺序表

    文章目录 一.什么是线性表 二.顺序表 三.手撕顺序表 属性定义 构造方法 接口实现 确保顺序表空间 增加元素 打印顺序表 判断顺序表中是否包含某个元素 查找元素 获取 pos 位置的元素 将 pos ...

  9. 【数据结构与算法】顺序表V3.0的Java实现

    更新说明 经过了顺序表V1.0的根据接口编写成型.顺序表V2.0的功能大幅度增强,这里推出了顺序表V3.0,功能的丰富性不及V2.0,但加入了迭代器,代码的编写也更加的合理了,应该说是比较好的作品了. ...

最新文章

  1. 标准css属性,你一定要知道的css属性值规范
  2. eslint vscode 自动格式化_Vue 入门系列第二期,开发环境与 ESLint 配置
  3. C++中逗号操作符重载的分析
  4. 47. 全排列 II(回溯算法)
  5. Oracle bigfile 大文件表空间会影响rman等备份效率
  6. 李宏毅机器学习(十一)meta-learning和ML一样是三个步骤
  7. Vue2.0 之 自带浏览器里无法打开(兼容IE处理) - 解决方案 命令
  8. 计算机系统及原理pdf,计算机系统组成及工作原理题目.pdf
  9. Educational Codeforces Round 51 (Rated for Div. 2) The Shortest Statement
  10. FZU《C语言程序综合设计》
  11. Pyqt之QApplication
  12. SPI 读取不同长度 寄存器_MCGS触摸屏如何实现批量读取modbus数据的方法?
  13. Postgresql本地语言环境参数设置(LC_COLLATE,LC_CTYPE)
  14. [Rscript]探索性因子分析
  15. 微信开发者工具通过二维码编译步骤
  16. ajax的readystate为3,为什么在做ajax时无法获得readyState 3(why can't get readyState 3 when doing a ajax)...
  17. 河北万豪环保紫外线消毒器普及知识
  18. 他写代码如入定,人称阿里“扫地僧,java自学教程百度云
  19. 【AI测试】人工智能测试、算法测试整体介绍——第一部分
  20. kerberos搭建

热门文章

  1. eclipse 使用jetty调试时,加依赖工程的源码调试方法
  2. makefile文件简要介绍
  3. R统计笔记(四):中括号与双中括号的差异
  4. 谷歌联合创始人:AI发展速度让我吃惊,但未来难料
  5. C4.5决策树 此博文包含图片 (2011-10-20 23:22:19)转载▼ 标签: 分类树
  6. 学习笔记:The Log(我所读过的最好的一篇分布式技术文章
  7. 数据库专家Michael Stonebraker获得2014年图灵奖
  8. 深入理解分布式技术 - 读写分离场景及注意事项解读
  9. 白话Elasticsearch08-深度探秘搜索技术之基于boost的细粒度搜索条件权重控制
  10. Spring Cloud【Finchley】实战-02订单微服务