杨辉三角
二项式系数在三角形中的一种几何排列。在欧洲,这个表叫做帕斯卡三角形。帕斯卡(1623----1662)是在1654年发现这一规律的,比杨辉要迟393年,比贾宪迟600年。杨辉三角是中国古代数学的杰出研究成果之一,它把二项式系数图形化,把组合数内在的一些代数性质直观地从图形中体现出来,是一种离散型的数与形的结合。
输出十行杨辉三角方法一
public class YangHui {
public static void main(String[] args) {
int [][]YangHui = new int[10][];
for (int i = 0; i < YangHui.length; i++) {
YangHui[i] = new int[i+1];//给每一个一维数组开空间
for (int j = 0; j < YangHui[i].length; j++) {
if(j==0||j== YangHui[i].length-1){
YangHui[i][j] = 1;//每一行的第一个元素和最后一个的元素都是1
} else {//中间元素
YangHui[i][j] = YangHui[i-1][j] + YangHui[i - 1][j - 1];
}
}
}
for (int i = 0;i<YangHui.length;i++){
for (int j = 0; j < YangHui[i].length; j++) {
System.out.print(YangHui[i][j] +"\t");
}
System.out.println();
}
}
}
输出结果
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
方法二
public class YH {
public static void main(String[] args) {
int row = 10;
int[][] a=new int [row][2*row+1];
a[0][row]=1;//第一行中间为1
//从第二行开始赋值
for (int i = 1; i < a.length; i++) {
for (int j = 1; j < a[i].length-1; j++) {
a[i][j]=a[i-1][j-1]+a[i-1][j+1];
}
}
for (int i = 0; i < a.length; i++) {
for (int j = 1; j < a[i].length-1; j++) {
if (a[i][j]==0) System.out.print("\t");//若元素为0不打印."\t"制表符打印美观
else System.out.print(a[i][j]+"\t");
}
System.out.println();
}
}
}
输出结果
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1