zoukankan      html  css  js  c++  java
  • leetcode 119 Pascal's Triangle II ----- java

    Given an index k, return the kth row of the Pascal's triangle.

    For example, given k = 3,
    Return [1,3,3,1].

    Note:
    Could you optimize your algorithm to use only O(k) extra space?

    上一道题的延伸版,就是直接求出第k行的数,要求用o(k)的空间复杂度。

    也是直接相加就可以了。

    public class Solution {
        public List<Integer> getRow(int rowIndex) {
    
            List ans = new ArrayList<Integer>();
    
            if( rowIndex == 0){
                ans.add(1);
                return ans;
            }
            else if( rowIndex == 1){
                ans.add(1);
                ans.add(1);
                return ans;
            }    
    
            int[] result = new int[rowIndex+1];
    
            result[0] = 1;
            result[1] = 1;
            for( int i = 2;i<rowIndex+1;i++){
                int a = result[0];
                int b = result[1];
                result[i] = 1;
                for( int j = 1;j<i;j++){
                    result[j] = a+b;
                    a = b;
                    b = result[j+1];
    
                }
            }
            for( int i = 0 ;i<rowIndex+1;i++)
                ans.add(result[i]);
    
    
            return ans;
            
        }
    }
  • 相关阅读:
    回调函数 协程
    网络编程 之线程
    并发编程 之进程相关
    并发编程的理论 python中实现多进程
    基于tcp的粘包处理终极版本
    基于socket的网络编程
    数据分析
    zabbix从入门到放弃
    Linux
    Django
  • 原文地址:https://www.cnblogs.com/xiaoba1203/p/6021234.html
Copyright © 2011-2022 走看看