问题描述
目的:使用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这个变量,在进行的下一步操作,所以估计会有一个不合法的例子在里面
- 修改:在输入模式的下一步直接判定是否需要进一步输入
- 实验结果如下:仍旧通不过,对比一下是否为相同的样例
- 分析:还是这四个样例,刚好跟四种输入模式对应起来,说明我输出从一开始就是错的
- 在输入,在一对比,发现,我是没有的对输入数组进行遍历
- 做了修改之后,通过
分析总结
- 一定要认真审题,并且对照对应的目录进行输出
代码实现
会查重的,不想重写,等时限过了,我在贴上来