杨辉三角形kotlin
时间: 2024-05-29 17:06:40 浏览: 106
杨辉三角形是一个以数字排列成三角形的数学模型,它的每个数字是上方两个数字的和。在Kotlin中,可以通过二维数组来实现杨辉三角形的生成,具体代码如下:
```
fun generate(numRows: Int): List<List<Int>> {
val triangle = ArrayList<List<Int>>()
if (numRows == 0) {
return triangle
}
triangle.add(listOf(1))
for (i in 1 until numRows) {
val prevRow = triangle[i - 1]
val row = ArrayList<Int>()
row.add(1)
for (j in 1 until i) {
row.add(prevRow[j - 1] + prevRow[j])
}
row.add(1)
triangle.add(row)
}
return triangle
}
```
该函数接收一个整数参数numRows,表示要生成杨辉三角形的行数。函数内部使用一个列表triangle来存储每一行的数字,首先向列表中添加第一行的数字1,然后通过循环逐行生成杨辉三角形。在循环中,首先获取上一行的数字prevRow,然后创建一个新列表row来存储当前行的数字。在row中添加第一个数字1,然后通过循环计算中间的数字,并将它们添加到row中,最后再添加最后一个数字1。最后将row添加到triangle中,并返回triangle。
阅读全文