假设我正在使用操作计算来计算以下伪代码的运行时间:
if(a > b) then [1 operation]
return a-b [1 operation]
else
return b-a [1 operation]
我会计算包括两个返回语句(3个操作)的操作总数吗?或者,因为我们通常会在计算运行时间时查看最坏的情况 - 我不会将第一个返回语句计为操作,因为它不会在最坏的情况下执行(2个操作)?
答案 0 :(得分:1)
在分析代码时,必须考虑分支条件,例如循环和if语句。每个代码分支都以return语句结束。
因此,在您的代码中,一旦您点击if,您就会创建两个分支。但是,两个分支具有相同数量的操作,只有一个减法。
基本上,最坏的情况是单个return语句的最长代码路径。