裁判测试程序样例:

解法一:  时间复杂度为O(n^2)

 1 //O(n^2)算法
 2 List Delete( List L, ElementType minD, ElementType maxD )
 3 {
 4     int i = 0;
 5     while(i <= L->Last)
 6     {
 7         if(L->Data[i] > minD && L->Data[i] < maxD)
 8         {
 9             for(int j = i; j <= L->Last - 1; ++j)
10                 L->Data[j] = L->Data[j+1];
11             L->Last--;
12             i = i-1;    //删除一个元素后,i要回退1
13         }
14         ++i;
15     }
16     return L;
17 }

解法二:选取非删除元素建立新表,时间复杂度为O(n)

 1 List Delete( List L, ElementType minD, ElementType maxD )
 2 {
 3
 4     Position cur = 0;
 5     int cnt = 0;
 6     for(int i = 0; i<=L->Last; i++)  /*遍历原始顺序表*/
 7     {
 8         if(L->Data[i]<=minD || L->Data[i]>=maxD)    /*保留不需删除的元素*/
 9         {
10             L->Data[cur] = L->Data[i];
11             cnt++;
12             cur++;
13         }
14     }
15     L->Last = cnt-1;
16
17     return L;
18 }

转载于:https://www.cnblogs.com/FengZeng666/p/9696650.html

线性表元素的区间删除相关推荐

  1. 6-1 线性表元素的区间删除 (10 分)

    ** 6-1 线性表元素的区间删除 (10 分) ** 给定一个顺序存储的线性表,请设计一个函数删除所有值大于min而且小于max的元素.删除后表中剩余元素保持顺序存储,并且相对位置不能改变. 函数接 ...

  2. 1-5 线性表元素的区间删除 (20 分)

    题目: 给定一个顺序存储的线性表,请设计一个函数删除所有值大于min而且小于max的元素.删除后表中剩余元素保持顺序存储,并且相对位置不能改变. 函数接口定义: List Delete( List L ...

  3. 习题3.3 线性表元素的区间删除 (20 分)

    给定一个顺序存储的线性表,请设计一个函数删除所有值大于min而且小于max的元素.删除后表中剩余元素保持顺序存储,并且相对位置不能改变. 函数接口定义: List Delete( List L, El ...

  4. 6-2 线性表元素的区间删除

    给定一个顺序存储的线性表,请设计一个函数删除所有值大于min而且小于max的元素.删除后表中剩余元素保持顺序存储,并且相对位置不能改变. 函数接口定义: List Delete( List L, El ...

  5. java中线性表删除元素和删除指定元素_线性表的插入和删除(Java版)

    1.线性表的定义: (1).线性表是一种可以在任意位置插入和删除数据元素操作.由n(n≥0)个相同类型数据元素a0, a1,-, an-1组成的线性结构.除了第一个元素没有前驱元素和最后一个元素没有后 ...

  6. 6-1 数组元素的区间删除

    6-1 数组元素的区间删除 (20 分) 给定一个顺序存储的线性表,请设计一个函数删除所有值大于min而且小于max的元素.删除后表中剩余元素保持顺序存储,并且相对位置不能改变. 函数接口定义: in ...

  7. PTA:6-8 数组元素的区间删除 (20 分)

    大一下半期数据结构 数据结构题目集 数组元素的区间删除 (20 分) 给定一个顺序存储的线性表,请设计一个函数删除所有值大于min而且小于max的元素.删除后表中剩余元素保持顺序存储,并且相对位置不能 ...

  8. 折半查找和线性表的插入与删除实验

    学号                     姓名                   博客名 2103101018         罗玛                   桃花岛-戌时 题目:折半 ...

  9. 1-4 数组元素的区间删除 (20 分)

    题目: 给定一个顺序存储的线性表,请设计一个函数删除所有值大于min而且小于max的元素.删除后表中剩余元素保持顺序存储,并且相对位置不能改变. 函数接口定义: int Delete( int A[] ...

最新文章

  1. 【重磅】Python版《统计学习导论》来啦!附代码链接!
  2. JZOJ__Day 5:【普及模拟】num
  3. boost::geometry::model::multi_polygon用法的测试程序
  4. String类得常用方法
  5. explain分析SQL查询
  6. UITabBarController中自定义UITabBar
  7. eclipse集成python插件
  8. linux性能测试cpu内存io,Linux下磁盘IO性能测试工具介绍
  9. 【导入篇】Robotics:Perception课程_导入篇、四周课程内容、week 1st Perspective Projection
  10. VMware12虚拟机安装教程
  11. php imagick 缩略图,PHP利用imagick生成组合缩略图,imagick缩略图_PHP教程
  12. 教务管理系统的设计与实践
  13. 古籍拆字 - 批量拆字成图 - js拆字 - js拆图 - js拆古籍 -导出svg矢量图
  14. bixby怎么编程_三星的Bixby可以做什么?
  15. 一位大佬对学习哲理的思考
  16. 身份证复印件一定要加签注 否则可能吃大亏!
  17. 平面机构创意组合及分析实验QY-JX09
  18. 嵌入式软件工程师和嵌入式硬件工程师有什么区别
  19. DNS-over-HTTPS 的下一代是 DNS ON BLOCKCHAIN
  20. 手机照片怎么压缩,手机照片压缩的方法

热门文章

  1. react 当前时间_如何使用 useRef 优化 React 性能问题
  2. 转让app后AppStore应用名称下面所有者显示问题
  3. c语言20字节的内存的数据怎么读取_C++编程-内存对齐
  4. 脑机接口新应用,利用深度学习对无声语音信号解码
  5. 你不会编程,不是你不行,很有可能是老师教的方法不好。科学家发现:对大脑而言,代码编程与语言学习不同...
  6. Nature子刊:用机器学习揭露人类基因调控背后的“语法”
  7. 换血吃药改基因,硅谷富豪们想用钱收买死神丨视频
  8. GitHub因“纳粹”评论遭解雇的犹太员工被复职,CEO公开致歉,开除他的HR走人...
  9. AI,来感受被「分手厨房」支配的恐惧吧!
  10. 「表面光鲜,实则搬砖」,机器学习社区自嘲不为人知的AI工程师真相