118Pascal'sTriangle.c

public class Solution {
    public List
   
   
    
    
     
     > generate(int numRows) {
        List
     
     
      
      
       
       > res = new LinkedList
       
        
        
          >(); if(numRows <= 0) return res; res.add(geCurRow(1, null)); if(numRows == 1){ return res; } res.add(geCurRow(2, null)); if(numRows > 2){ for(int i = 3; i <= numRows; i++){ res.add(i-1, geCurRow(i, (List 
         
           )res.get(i-2))); } } return res; } public List 
          
            geCurRow(int curRow, List 
           
             preRow){ List li = new LinkedList(); switch(curRow){ case 1: li.add(1); break; case 2: { li.add(1); li.add(1); break; } case 3:{ li.add(1); li.add(2); li.add(1); break; } default:{ li.add(0, 1); li.add(1, curRow-1); li.add(2, curRow-1); li.add(3, 1); int i; for(i = 2; i < curRow/2; i++){ Integer tp = preRow.get(i) + preRow.get(i-1); li.add(i, tp); li.add(i+1, tp); } if(curRow % 2 != 0) li.add(i, preRow.get(i)*2); } } return li; } } 
            
           
          
         
       
      
      
     
     
    
    
   
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值