杨辉三角
使用二维数组打印一个10行杨辉三角。并输出算法的运行时间
【提示】
1.第一行有1个元素,第n行有n个元素
2.每一行的第一个元素和最后一个元素都是1
3.从第三行开始,对于非第一个元素和最后一个元素的元素。即:
yanghui[i][i] = yanghui[i-1][i-1] + yanghui[i-1][i];
1.Java源程序
package com.jd.wds;
/*
* 定义一个二维数组,打印出十行的杨辉三角
*/
public class YangHuiTest {
public static void main(String[] args) {
//1.声明二维数组yanghui[][]
int[][] yanghui = new int[10][];
long startTime = System.currentTimeMillis(); //返回当前时间以毫秒为单位
for(int i=0;i<10;i++) {
yanghui[i]= new int[i+1]; //2.每一行内层数组元素的个数
yanghui[i][0] = yanghui[i][i] = 1; //3.给每一行的首元素和末元素赋值
if(i>1) {
for(int j=1;j<yanghui[i].length-1;j++) { //4.给中间元素(非首末元素)赋值
yanghui[i][j] = yanghui[i-1][j-1]+yanghui[i-1][j];
}
}
}
for(int i=0;i<yanghui.length;i++) { //5.打印输出杨辉三角,首次遍历行数
for(int j=0;j<yanghui[i].length;j++) { //6.遍历每一行的元素数目
System.out.print(yanghui[i][j]+"\t");
}
System.out.println();
}
long endTime = System.currentTimeMillis();
System.out.println();
System.out.println("耗时为:"+(endTime - startTime)+"ms"); //(endTime - startTime)差值为程序的运行时间
}
}
2.实现效果: