2021-10-10:杨辉三角 II。给定一个非负索引 rowIndex,返回「杨辉三角」的第 rowIndex 行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。力扣119。

2021-10-10:杨辉三角 II。给定一个非负索引 rowIndex,返回「杨辉三角」的第 rowIndex 行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。力扣119。

福大大 答案2021-10-10:

自然智慧即可。arr[i][j]=arr[i-1][j-1]+arr[i-1][j]。当前元素=上+左上。可空间压缩。
时间复杂度:O(N**2)。
空间复杂度:O(N)。

代码用golang编写。代码如下:

package main

import "fmt"

func main() {
    ret := getRow(5)
    fmt.Println(ret)
}
func getRow(rowIndex int) []int {
    ans := make([]int, 0)
    for i := 0; i <= rowIndex; i++ {
        for j := i - 1; j > 0; j-- {
            ans[j] = ans[j-1] + ans[j]
        }
        ans = append(ans, 1)
    }
    return ans
}

执行结果如下:
图片


左神java代码

posted @ 2021-10-10 22:09  福大大架构师每日一题  阅读(11)  评论(0编辑  收藏  举报  来源