說到楊輝三角問題,讓我想起當初高中上數學課的時候,當時老師只講了一些公式具體的可以參考百度百科-楊輝三角,然後讓我們求其中的某一項,然後,就沒有然後了......
基本性質:一個數等於它肩上兩數之和
1、打印出兩邊的值,即1
其中一行,非常重要,
iArray[i] = new int[i+1];
如果有忘記二位數組的可以看白話C++ 第十七章 數組其中的二維數組的章節
下面是調試出來的結果,看了之後就應該明白了 public static void main(String[] args) {
int [][] iArray = new int[10][];
for(int i=0;i<iArray.length;i++) {
//行是從0開始 ,否則出現空指針異常
//即初始化二維數組的每一行的大小,第一行存儲1個數組,以此類推
iArray[i] = new int[i+1];
//從第一行開始 依次給每行加不同的空格
for(int k=iArray.length-1;k>i;k--){
System.out.print(" ");
}
//控制每行輸出的元素
for(int j=0;j<=i;j++) {
if(j==0 || j==i) {
//兩邊的值
iArray[i][j]=1;
System.out.print(iArray[i][j]+" ");
}else{
//中間的值
//iArray[i][j]=iArray[i-1][j]+iArray[i-1][j-1];
System.out.print(iArray[i][j]+" ");
}
}
System.out.println();//換行
}
}
2、把0替換成兩肩之和
}else{
//中間的值
iArray[i][j]=iArray[i-1][j]+iArray[i-1][j-1];
System.out.print(iArray[i][j]+" ");
}
最後,擴展閱讀:楊輝三角在路徑問題中的應用,畢竟要學以致用!