题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
初看这题,觉得很简单,可实际操作起来,个中情况还比较复杂。
后来明确了测试用例,再来研究下:
说明 |
测试数据 |
预期结果 |
实际结果 |
是否通过 |
首位为最大值,末位为最小值 |
9、3、7、5、1 |
9、3、7、5、1 |
|
|
首位为最小值,末位为最大值 |
1、3、7、5、9 |
9、3、7、5、1 |
9 3 7 5 9 |
|
首位为最大值,最小值位于中间 |
9、3、1、7、5 |
9、3、5、7、1 |
|
|
首位为最小值,最大值位于中间 |
1、3、9、7、5 |
9、3、5、7、1 |
|
|
末位为最大值,最小值位于中间 |
3、1、7、5、9 |
9、3、7、5、1 |
|
|
末位为最小值,最大值位于中间 |
3、9、7、5、1 |
9、3、7、5、1 |
|
|
首末均非最大、最小值。最小值位于最大值左边。 |
3、1、9、7、5 |
9、5、3、7、1 |
|
|
首末均非最大、最小值。最大值位于最小值左边。 |
3、9、1、7、5 |
9、3、5、7、1 |
|
|