题解
【入门】求四个数的最大数
1 条题解
-
0
解题思路
题目要求从四个不等的整数里找出最大的一个。
思路:打擂台。
先假设第一个数 a 是最大的,让后面的数一个个来挑战:
- 如果 b 比当前最大值大,最大值换成 b
- 如果 c 比当前最大值大,最大值换成 c
- 如果 d 比当前最大值大,最大值换成 d
比完之后,剩下的就是四个数里最大的。
为什么叫打擂台? 就像擂台赛,先一个人当擂主,挑战者赢了就当新擂主,最后站在擂台上的就是冠军(最大值)。
参考代码
#include <iostream> using namespace std; int main() { int a, b, c, d; cin >> a >> b >> c >> d; int mx = a; // 先假设 a 最大 if (b > mx) mx = b; // b 更大就更新 if (c > mx) mx = c; // c 更大就更新 if (d > mx) mx = d; // d 更大就更新 cout << mx << endl; return 0; }复杂度分析
- 时间复杂度:O(1),比较三次
- 空间复杂度:O(1)
- 1