Rt,很基础的但是搞了好久都不会,大神救救我
题目就是输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。【
int max = 0, min = 0;
for (int i = 0; i < arr.length(); i++)
{
if (arr[i] > arr[max]) max = i;
if (arr[i] < arr[min]) min = i;
}
int temp = arr[0];
arr[0] = arr[max];
arr[max] = temp;
temp = arr[arr.length() - 1];
arr[arr.length() - 1] = arr[min];
arr[min] = temp;
这不就是嵌套循环么,遍历找出最大,遍历找出最小,然后分别与第一位和最后一位交换就是了
遍历一遍找最大最小值,然后替换第一个和最后一个值。苏给的代码很好了,如果有负数需要调整max和min值
两层for循环,遍历一下~
你就做两趟遍历吧,分别找到最小值和最大值就行了,然后替换到指定位置