Basic6 基础练习 杨辉三角形
题目如下:

这道题其实是很经典的,身为基础题,讲道理是很好做的,但今天不知道为啥,磨叽了很久才写好
这道题的解法是这样的,这里运用了双数组来解决,array1就代表着当前那层的数,而array2就是通过当前层得到的下一层的数,因为数据也是一层层输出的,所以这样写比较好。
所以算法的核心就是两层循环,第一次循环代表着层数,就是从第一层到第n层,第二层循环就是输出当前层的数以及得到下一层数的一个过程。
坑点有两个,第一个就是array.length可不是你填的数的个数,而是你创建数组时给的长度,这点我竟然忘了,fuck。第二个就是对象的赋值了,我当时直接在第一层循环结束时,将下一层的数赋值给当前层(就是代表着当前层往下移动了)。这样两个变量就引用了同一个数组,所以下一次循环修改array2时也相当于修改了array1。所以最好就是把array2当作循环中的临时变量。当然也可以用数组拷贝的方式进行。
package basic;
import java.util.Scanner;
/**
* @Description: 基础练习 杨辉三角形
* @ClassName: Basic6
* @author: fan.yang
* @date: 2020/07/14 19:55
*/
public class Basic6 {
public static void main