階乘

定義

一個正整數(shù)的階乘是指所有小于或等于該正整數(shù)的正整數(shù)的乘積,記作n!,0的階乘等于1

Java遞歸實現(xiàn)

/**
 * 計算數(shù)n的階乘值
 * 
 * @param n
 *            階乘停止的值
 * @return 階乘后的結(jié)果
 */
public int factorial(int n) {
    if (n == 0) {
        return 1;
    } else if (n < 0) {
        return n * factorial(n + 1);
    } else {
        return n * factorial(n - 1);
    }
}

Java非遞歸實現(xiàn)

/**
 * 非遞歸實現(xiàn)階乘
 * 
 * @param n
 * @return
 */
public int factorialWithoutTraversal(int n) {
    int result = 1;
    if (n == 0) {
        // 如果n等于0直接返回1
        return result;
    }
    int start = n > 0 ? 1 : n;// 如果n大于0的話,階乘起始值設(shè)為1,否則設(shè)為n
    int end = n > 0 ? n : -1;// 如果n大于0的話,階乘終止值設(shè)為n,否則設(shè)為-1
    for (; start <= end; start++) {
        result = result * start;
    }
    return result;
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 如果用字母n來代表一個整數(shù),階乘代表著所有小于或等于n的整數(shù)的乘積。 階乘通常簡寫成 n! 例如: 代碼如下,使用...
    Joe_Somebody閱讀 1,746評論 0 0
  • 計算一個整數(shù)的階乘 如果用字母n來代表一個整數(shù),階乘代表著所有小于或等于n的整數(shù)的乘積。 階乘通常簡寫成 n! 例...
    少年vv閱讀 6,693評論 0 1
  • 計算一個整數(shù)的階乘 如果用字母n來代表一個整數(shù),階乘代表著所有小于或等于n的整數(shù)的乘積。 階乘通常簡寫成 n! 例...
    蠟筆小狗閱讀 490評論 0 0
  • 一個正整數(shù)的階乘(英語:factorial)是所有小于及等于該數(shù)的正整數(shù)的積,并且0的階乘為1。自然數(shù)n的階乘寫作...
    bluescorpio閱讀 409評論 0 1
  • 坐月子,哎!幸福的月子都是相似的,不幸的月子各有各的不幸!我這人生的第一個月子生活過的也很“奇葩”。 不說剛出院回...
    喵小雨的語閱讀 256評論 0 0

友情鏈接更多精彩內(nèi)容