楊輝三角

面試的時候總會遇到手寫楊輝三角算法,當時是一臉懵逼,過了那么長時間,終于下定決心好好研究研究.

1.首先使用c++:


// 楊輝三角
void YangHuifunction(){
    // 1. 初始化,都賦值為0
    int arr[10][10];
    for (int x = 0; x<10; x++) {
        for (int y = 0; y< x; y++) {
            arr[x][y] = 0;
        }
    }
    // 2.設置每一行的第一列和最后一列都是 1
    for (int i = 0;i<=10 ;i++) {
        arr[i][0] = 1;
        arr[i][i] = 1;
    }
    // 3.賦值
    for (int i = 2; i<10; i++) {
        for (int j = 1; j< i; j++) {
            // 等于上一行的第j-1列和第j列的和
            arr[i][j] = arr[i-1][j-1] + arr[i-1][j];
        }
    }
    // 4.打印結果
    for (int x = 0; x<10; x++) {
        for (int y = 0; y<= x; y++) {
            cout<<arr[x][y]<< "  " ;
        }
        cout<<endl;
    }
}

2.swift語言:

    func YangHuiFunction(){
        // 1.初始化
        let n = 10
        // 根據(jù)行數(shù)初始化一個二維數(shù)組 
        var arr = [[Int]](repeating: [], count: n)
        // 根據(jù)每一行個數(shù)初始化每一行
        for i in 0..<arr.count
        {
            arr[i] += [Int](repeating: 0, count: i + 1)
        }
        // 2.賦值
      for i in 0..<arr.count
      {
            for j in 0..<arr[i].count
            {
                if j == 0 || j == i
                {
                    arr[i][j] = 1
                }
            else {
                arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j]
                }
            }
        }
        
        // 3.打印
        for i in 0..<arr.count {
            // 當前行開始打印前,打印一定的空格 
            for _ in 0..<arr.count - 1 - i {
                print(" ", terminator: "") }
            // 打印當前行的數(shù)字 
            for j in arr[i] {
                print(j, terminator: " ")
            }
            // 換行 
            print("")
        }
            
         
    
    }
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

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

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