题目描述:
解题思路:
方法1:for输入数组的过程中一次次的比较max和min,并累加sum
方法2:for输入数组过程中只累加sum,输入完对数组进行sort操作,输出第一个和最后一个作为最小值和最大值
方法2速度明显快了很多,最后运行结果是运行时间仅有方法1的一半(文末截图)
遇到问题:
没啥问题
代码:
#include<bits/stdc++.h>
using namespace std;
void func1(){
int Max = INT_MIN;//为int类型的最小值
int Min = INT_MAX;//为int类型的最大值
int Sum = 0;
int n;
cin >> n;
vector<int> arr(n);
for(int i = 0; i < n; i++){
cin >> arr[i];
Sum += arr[i];//累加sum
Max = arr[i] > Max ? arr[i] : Max;//保存max
Min = arr[i] < Min ? arr[i] : Min;//保存min
}
cout << Max << endl << Min << endl << Sum << en