题解 | #获取三个数中的最大值(三元表达式实现)#

获取三个数中的最大值(三元表达式实现)

http://www.nowcoder.com/practice/d7d48b7b44df46889137ec19d924bb14

题目的主要信息:

  • 对于输入的三个整数aaabbbccc,取其中最大值输出
  • 要求使用三元表达式

具体做法:

C++唯一的三元表达式:

(语句1) ? (语句2): (语句3)

这是一个具有判断功能的表达式,其中语句1类似if语句括号中的内容,具有判断作用,如果语句1的结果为true,则进入语句2,如果语句1的结果为false,则进入语句3。

我们用一个待输出的变量output先保存aaa的值,然后分别用三元表达式判断它与bbbccc的大小关系,更新output为其中较大值,这样我们就找到了三个数的最大值。

alt

#include <iostream>
using namespace std;

int main() {
	
	int a, b, c;
	cin >> a;
	cin >> b;
	cin >> c;
	int output = a; //先让待输出等于第一个数
    output = output > b ? output : b; //三元表示判断待输出与b的大小,更新为较大值
    output = output > c ? output : c; //三元表示判断待输出与c的大小,更新为较大值
    cout << output << endl;
	return 0;
}

复杂度分析:

  • 时间复杂度:O(1)O(1)O(1),只有判断没有循环,常数时间
  • 空间复杂度:O(1)O(1)O(1),临时变量都是常数个
孤帆远影碧空尽 文章被收录于专栏

牛客网各类题单题解~

全部评论

相关推荐

点赞 评论 收藏
分享
fRank1e:吓得我不敢去外包了,但是目前也只有外包这一个实习,我还要继续去吗
点赞 评论 收藏
分享
评论
19
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务