Pascal's Triangle II
Total Accepted:4253Total
Submissions:14495My Submissions
Given an indexk, return thekthrow of the
Pascal's triangle.
For example, givenk= 3,
Return[1,3,3,1]
.
Note:
Could you optimize your algorithm to use onlyO(k) extra space?
下面程序空间效率O(k),使用了两个vector<int>交替使用,因为只利用上一行就能填写下一行了。
vector<int> getRow(int rowIndex)
{
vector<int> pre;
if (rowIndex < 0) return pre;
vector<int> rs(1,1);
for (int i = 0; i < rowIndex; i++)
{
pre.clear();
rs.swap(pre);
rs.push_back(1);
for (int j = 0; j < i; j++)
{
rs.push_back(pre[j]+pre[j+1]);
}
rs.push_back(1);
}
return rs;
}
因为只利用当前行两个数值的信息覆盖新填写的数列格也是可以的,所以只利用一个vector<int>也是可以的。
Leetcode上总有人写出更加简洁的程序的:
vector<int> getRow(int rowIndex)
{
vector<int> array;
for (int i = 0; i <= rowIndex; i++)
{
for (int j = i-1; j > 0; j--)
{
array[j] = array[j-1] + array[j];
}
array.push_back(1);
}
return array;
}
//2014-2-17 update
vector<int> getRow(int rowIndex)
{
vector<int> rs(1,1);//注意题意:当rowIndex==0是output:[[1]]
for (int i = 1; i <= rowIndex; i++)
{
for (int j = i-1; j > 0; j--)
{
rs[j] += rs[j-1];//注意:这里需要逆向填表!
}
rs.push_back(1);
}
return rs;
}
分享到:
相关推荐
主要介绍了基于Java实现杨辉三角 LeetCode Pascal's Triangle的相关资料,需要的朋友可以参考下
462 | [Minimum Moves to Equal Array Elements II](https://leetcode.com/problems/minimum-moves-to-equal-array-elements-ii/) | [C++](./C++/minimum-moves-to-equal-array-elements-ii.cpp) [Python](./Python/...
Pascal's Triangle easy O O 119 Pascal's Triangle II easy O 要满足只用一个array大小空间O(k) k为input大小来完成,须具备backtracking概念 151 Reverse Words in a String medium O 这题有点算是easy的程度, ...
Pascal's Triangle v. Merge Sorted Array vi. Sum vii. Find Minimum in Rotated Sorted Array viii. Largest Rectangle in Histogram ix. Maximal Rectangle x. Palindrome Number xi. Search a 2D Matrix xii. ...
leetcode-js Leecode 经典题目 JavaScript TypeScript 题解。 Leetcode's answers by JavaScript and TypeScript. easy 66.加一 (Plus One) 67.二进制求和 (Add Binary) ...119.杨辉三角 II (Pascal's Triangle)
119_Pascal's_Triangle_II 169_Majority_Element 229_Majority_Element_II 274_H_索引 275_H_Index_II 217_Contain_Duplicate 55_Jump_Game 45_Jump_Game_II 121_Best_Time_to_Buy_and_Sell_Stock 122_Best_Time_to_...
Pascal's Triangle Given two sorted integer arrays A and B, merge B into A as one sorted array.Note: You may assume that A has enough space (size that is greater or equal to m + n)to hold additional ...
leetcode添加元素使和等于 Leetcode Part1 共55道 1 plusOne easy 描述:用一组数据表示一个整数,实现整数加一的操作 主要思路:主要考虑最高位进位的情况,可以创建一个长度加一的...Pascal's Triangle II easy 描
2.使用数组作为带符号的缓冲区118.Pascal's Triangle -> 理解结构并做167 Two Sum II - 输入数组已排序:使用排序数组的条件,使用前后两个指针35.Search Insert Position -> 线性搜索/二分搜索(左右各有1个间隙) ...
Pascal's Triangle (杨辉三角) 124 二叉树最大路径和 136 x ^ x = 0 169 Majority Vote Algorithm (最大投票数算法) 240 检索二阶矩阵 189 数组操作的时间复杂度比较 206 反转单向链表 226 反转二叉树 459 重复子...
Pascal's Triangle #0121 - Best Time to Buy and Sell Stock #0125 - Valid Palindrome #0136 - Single Number #0167 - Two Sum - Input Array is sorted #0189 - Rotate Array #0217 - Contains Duplicate #0242 -...
Pascal's Triangle II Spiral Matrix Spiral Matrix II ZigZag Conversion Divide Two Integers Text Justification Max Points on a Line Community QQ 群: 237669375 Github: ...
leetcode SDE-问题 标准 SDE 问题列表 第一天:(数组) 日 问题陈述 解决方案 困难 使用的数据结构 使用的算法 时间复杂度 空间复杂度 补充阅读 在 N 个整数的数组中查找重复项 中等的 大批 不适用 上) O(1) 在不...