我写了一个阶乘函数,我尝试使用终止条件(n == 0)和(n == 1)运行它并且我没有看到任何差异,所以我想知道是否有任何关于表现的差异。
int factorial(int n){
//If condition is changed to n==1 there is no difference.
if (n == 0){
return 1;
}
return n * factorial(n - 1);
}
答案 0 :(得分:3)
停在 driver.switch_to.frame(driver.find_element_by_xpath("//iframe[@title='SRC']"))
而不是n==0
会为计算添加另一个步骤,但这完全可以忽略不计。
主要区别在于数学严格性。如果您使用n==1
终止计算,则根据空产品的惯例,您的实施将无法计算n==1
,其定义为0!
。