标签:
Given numRows, generate the first numRows of Pascal‘s triangle.
For example, given numRows = 5,
Return
[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1] ]
首先了解 杨辉三角,第n行有n个元素,最左最右为1,其他的等于n-1行,自己的位置数和前一个数的和。如:第四行,第二个,3=1+2.
分析:当n>3,2~n-1的数字取决于上一行的元素。
两个循环,1~N 的行,·2~n-1的内部元素。
ArrayList
1 List<List<Integer>> result= new ArrayList<List<Integer>>(); 2 List<Integer> row=new ArrayList<Integer>(); 3 4 for(int i=0;i<numRows;i++){ 5 result.add(i,row); 6 row.add(0,1); 7 for(int j =1 ;j<i;j++){ 8 row.add(j,result.get(i-1).get(j)+result.get(i-1).get(j-1)); 9 } 10 11 if(i!=0) 12 row.add(i,1); 13 row = new ArrayList<Integer>(); 14 } 15 16 return result;
ArrayList 遍历
ArrayList<Integer> result = new ArrayList<Integer>(); for(int i-0;i<10;i++) result.add(i); //遍历方法 for(Integer tmp: result) System.out.println(tmp); Iterator tmp=result.iterator(); while(tmp.hasNext()) System.out.println(tmp.next()); for(int i;i<result.size();i++) System.out.println(result.get(i));
标签:
原文地址:http://www.cnblogs.com/ziva-core/p/4435977.html