leetcode 119. Pascal's Triangle II 杨辉三角形2
来源:互联网 发布:苹果手机电池修复软件 编辑:程序博客网 时间:2024/04/25 10:13
Given an index k, return the kth row of the Pascal’s triangle.
For example, given k = 3,
Return [1,3,3,1].
就是中国最伟大的杨辉三角形。
代码如下:
import java.util.ArrayList;import java.util.List;public class Solution { public List<Integer> getRow(int rowIndex) { List<List<Integer>> res=new ArrayList<>(); if(rowIndex==0) { List<Integer> one=new ArrayList<>(); one.add(1); res.add(one); return res.get(0); }else { List<Integer> one=new ArrayList<>(); one.add(1); one.add(0); res.add(one); for(int i=1;i<rowIndex+1;i++) { List<Integer> tt=res.get(i-1); List<Integer> rr=new ArrayList<>(); rr.add(tt.get(0)); for(int j=1;j<tt.size();j++) rr.add(tt.get(j) + tt.get(j-1)); rr.add(0); res.add(rr); } for(int i=0;i<res.size();i++) res.get(i).remove(res.get(i).size()-1); return res.get(rowIndex); } }}
下面是C++的做法,和上面的一道题一模一样,就是做一个迭代计算即可完成
代码如下:
#include <iostream>#include <vector>using namespace std;class Solution {public: vector<int> getRow(int rowIndex) { if (rowIndex == 0) return vector<int>(1,1); else { vector<vector<int>> res; vector<int> one{ 1 ,0 }; res.push_back(one); for (int i = 1; i < rowIndex+1; i++) { vector<int> one{ res[i - 1][0] }; for (int j = 1; j < res[i - 1].size(); j++) one.push_back(res[i - 1][j] + res[i - 1][j - 1]); one.push_back(0); res.push_back(one); } for (int i = 0; i < res.size(); i++) res[i].erase(res[i].end() - 1); return res[rowIndex]; } }};
阅读全文
0 0
- leetcode 119. Pascal's Triangle II 杨辉三角形2
- leetcode 119.Pascal's Triangle II-杨辉三角形
- LeetCode: Pascal's Triangle II (返回杨辉三角形第i行)
- leetcode:Pascal's Triangle II (杨辉三角形,空间限制)【面试算法题】
- [leetcode]Pascal's Triangle II (杨辉三角形求输出第k行的值)
- [LeetCode]118. Pascal's Triangle&119. Pascal's Triangle II
- leetcode: Pascal's Triangle (杨辉三角形) 【面试算法题】
- (LeetCode)杨辉三角形Pascal's Triangle
- leetcode 118. Pascal's Triangle 杨辉三角形
- 【LeetCode-面试算法经典-Java实现】【119-Pascal's Triangle II(帕斯卡三角形(杨辉三角)II)】
- Leetcode 119. Pascal's Triangle II 杨辉三角2 解题报告
- LeetCode 119. Pascal's Triangle II
- 119. Pascal's triangle II Leetcode Python
- [LeetCode]119.Pascal's Triangle II
- [Leetcode] 119. Pascal's Triangle II
- [leetcode] 119.Pascal's Triangle II
- 【leetcode】119. Pascal's Triangle II
- 【Leetcode】119. Pascal's Triangle II
- C++基础学习笔记:自定义数组模板类
- 【ProgrammingMicrosoftAzureServiceFabric】第四章: Actor模式
- js常用的一些面试题。
- Java面向对象(三)Static
- Java标识符和关键字
- leetcode 119. Pascal's Triangle II 杨辉三角形2
- CSS3过渡
- Android开发:最全面、最易懂的Webview使用详解
- IE格式化日期显示NaN的问题
- 深入理解计算机系统(2.1)------信息的存储和表示
- chart.js参数问题
- java类加载
- 反转链表
- 方法引用