打印杨辉三角
2017-08-14 23:59
176 查看
//打印前8行杨辉三角
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
class YangHuiTriangle
{
public static void main(String[] args)
{
/*
int[][] yht = new int[8][8];
//先初始化8个一维数组中的所有的元素值都为1;
for(int i=0;i<yht.length;i++){
for(int j=0;j<yht[i].length;j++){
yht[i][j] = 1;
}
}
//当第三行的第二个元素值等于前一行对应列的元素值与前一列的元素值的和
for(int i=2;i<yht.length;i++){
for(int j=1;j<i;j++){
yht[i][j] = yht[i-1][j-1]+yht[i-1][j];
}
}
//遍历出其需要打印出的元素值
for(int i=0;i<yht.length;i++){
for(int j=0;j<=i;j++){
System.out.print(yht[i][j]+"\t");
}
System.out.println();
}
*/
// 第二种方式,更优化代码
int[][] yht = new int[8][]; //定义一个二位数组,其有8行但是其每行的元素个数不一样,可以先确定有几个一维数组
for(int i=0;i<yht.length;i++){
yht[i] = new int[i+1]; //初始化每个一维数组中的元素个数,因为每个一维数组中的元素等于行的数
for(int j=0;j<yht[i].length;j++){ //数组是从下标为0开始的
if(i==0 || j==0 || j==yht[i].length-1){
yht[i][j] = 1;
}else{
yht[i][j]=yht[i-1][j-1]+yht[i-1][j];
}
System.out.print(yht[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
class YangHuiTriangle
{
public static void main(String[] args)
{
/*
int[][] yht = new int[8][8];
//先初始化8个一维数组中的所有的元素值都为1;
for(int i=0;i<yht.length;i++){
for(int j=0;j<yht[i].length;j++){
yht[i][j] = 1;
}
}
//当第三行的第二个元素值等于前一行对应列的元素值与前一列的元素值的和
for(int i=2;i<yht.length;i++){
for(int j=1;j<i;j++){
yht[i][j] = yht[i-1][j-1]+yht[i-1][j];
}
}
//遍历出其需要打印出的元素值
for(int i=0;i<yht.length;i++){
for(int j=0;j<=i;j++){
System.out.print(yht[i][j]+"\t");
}
System.out.println();
}
*/
// 第二种方式,更优化代码
int[][] yht = new int[8][]; //定义一个二位数组,其有8行但是其每行的元素个数不一样,可以先确定有几个一维数组
for(int i=0;i<yht.length;i++){
yht[i] = new int[i+1]; //初始化每个一维数组中的元素个数,因为每个一维数组中的元素等于行的数
for(int j=0;j<yht[i].length;j++){ //数组是从下标为0开始的
if(i==0 || j==0 || j==yht[i].length-1){
yht[i][j] = 1;
}else{
yht[i][j]=yht[i-1][j-1]+yht[i-1][j];
}
System.out.print(yht[i][j]+"\t");
}
System.out.println();
}
}
}
相关文章推荐
- 只用一个一维数组打印杨辉三角
- 队列实现杨辉三角打印
- Java 不用数组打印杨辉三角
- 杨辉三角的金字塔数字打印输出
- 黑马程序员——论坛活动:100以内素数之和、数组排序阶梯状输出、反向打印杨辉三角
- 在屏幕上打印杨辉三角
- 打印杨辉三角
- 使用C编程语言程序习题-打印杨辉三角
- C#打印杨辉三角
- 打印杨辉三角
- 如何打印十层的杨辉三角
- 0802-Java打印六阶杨辉三角(两种)
- 打印一个杨辉三角
- Java杨辉三角的打印
- 打印一个杨辉三角
- 循环队列打印杨辉三角
- T-SQL打印杨辉三角的两种解决方式
- 面试基础题系列(二)java 打印 ,杨辉三角
- LeetCode Pascal's Triangle 打印杨辉三角
- java语言打印菱形杨辉三角