顺序表ADT模板简单应用算法设计:在给定的顺序表中找出最大和最小的元素

问题描述

目的:使用STL的vector模板设计并实现顺序表应用场合的一些简单算法设计。

应用8:试设计一个算法,找出顺序表A中最大和最小的元素(输出在屏幕上),并保持原顺序表不变。

参考函数原型:

template<class ElemType>
bool Search_Max_Min( vector<ElemType> &A, ElemType &max, ElemType &min );

输入说明

第一行:顺序表A的数据元素的数据类型标记(0:int,1:double,2:char,3:string)

第二行:顺序表A的长度

第三行:顺序表A的数据元素(数据元素之间以空格分隔)

输出说明

如第一行输入值为0、1、2、3之外的值,直接输出“err”

否则:

第一行:顺序表A的遍历结果

第二行:最大值max

第三行:最小值min

输入范例

3
6
aa a aaa aaaaa aaaa aaaaaaaa

输出范例

aa a aaa aaaaa aaaa aaaaaaaa 
aaaaaaaa
a

思路分析

  • 最值是建立在比较的基础上的,所以先实现不同类型的比较

错误和分析

在这里插入图片描述

  • 自己私下又试验了不同数据类型的四组数字,都是通过的。但是当输入0到3以外的数字时,会让我输入size这个变量,在进行的下一步操作,所以估计会有一个不合法的例子在里面
  • 修改:在输入模式的下一步直接判定是否需要进一步输入

在这里插入图片描述

  • 实验结果如下:仍旧通不过,对比一下是否为相同的样例
    在这里插入图片描述
  • 分析:还是这四个样例,刚好跟四种输入模式对应起来,说明我输出从一开始就是错的
  • 在输入,在一对比,发现,我是没有的对输入数组进行遍历
    在这里插入图片描述
  • 做了修改之后,通过
    在这里插入图片描述

分析总结

  • 一定要认真审题,并且对照对应的目录进行输出

代码实现

会查重的,不想重写,等时限过了,我在贴上来

猜你喜欢

转载自blog.csdn.net/Blackoutdragon/article/details/108951122
今日推荐