一維數組高效率解決楊輝三角

import java.util.Scanner;
public class 楊輝三角 {
    public static void main(String[] args) {
           int j,k,i,a[],b[];java

       Scanner scanf = new Scanner(System.in);
        System.out.print("(a+b)^");
        int n=scanf.nextInt();
        a=new int[n+1];
        b=new int[n+1];
//↑↑↑↑↑↑↑變量的定義與輸入↑↑↑↑↑↑↑↑//
        
        for (i=0;i<n+1;i++)
        { a[i]=1;
          b[i]=a[i];}
//↑↑↑↑↑↑↑↑↑數組初始化↑↑↑↑↑↑↑↑↑↑//
        
        for(i=-1;i<n;i++) {
            for(j=1;j<=i;j++)
                b[j]=a[j-1]+a[j];
            for(k=1;k<=i;k++)
                a[k]=b[k];
//↑↑↑↑↑↑↑↑↑核心算法↑↑↑↑↑↑↑↑↑↑//
            
            for(j=n-i;j>0;j--)
                System.out.print(" ");
            for(k =0;k<=i+1;k++)
                System.out.print(a[k] + " ");
            System.out.print("\n");
//↑↑↑↑↑↑↑↑↑↑輸出↑↑↑↑↑↑↑↑↑↑↑//
        }
    }算法

}數組

用一維數組解題目能夠節省大量存儲空間class

結果:
(a+b)^3
    1
   1 1
  1 2 1
 1 3 3 1

import

相關文章
相關標籤/搜索