119 Pascal's Triangle II
2015-03-16 17:32
211 查看
方法一:(模拟杨辉三角的特点,用一个数组进行不断更新,也就是上一层两数的和为下一层的数,循环k次,时间复杂度是O(n^2)的,空间复杂度是O(k)的class Solution { public: vector<int> getRow(int rowIndex) { vector<int>vec; vec.push_back(1); for(int i=1; i<=rowIndex; i++){ int p=0, a=0, b=vec[p]; for(;p<i;p++){ vec[p]=a+b; a=b; if(p+1<i) b=vec[p+1]; } vec.push_back(1); } return vec; } };
方法二:(可以知道杨辉三角第n层的序列其实就是二项式(a+b)^n的系数,按此规律可以进行打表计算class Solution { public: vector<int> getRow(int rowIndex) { int C[rowIndex+2][rowIndex+2]; memset(C, 0, sizeof(C)); for(int i=0; i<=rowIndex; i++){ C[i][0]=1; for(int j=1; j<=i; j++) C[i][j]=C[i-1][j-1]+C[i-1][j]; } vector<int>vec; int r = rowIndex; for(int i=0; i<=r; i++){ cout<<C[r][i]<<endl; vec.push_back(C[r][i]); } return vec; } };
相关文章推荐
- 119. Pascal's Triangle II
- leetcode题解-118. Pascal's Triangle && 119. Pascal's Triangle II
- leetcode119. Pascal's Triangle II
- 119. Pascal's Triangle II
- ※ Leetcode - Dynamic Programming - 119. Pascal's Triangle II(倒叙滚动数组求解杨辉三角第k行)
- LeetCode119——Pascal's Triangle II
- LeetCode WIith JS || 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
- Leetcode:119. Pascal's Triangle II(JAVA)
- LeetCode 118, 119. Pascal's Triangle i, ii
- Leetcode#119. Pascal's Triangle II(杨辉三角II)
- Leetcode 119. Pascal's Triangle II
- LeetCode 119: Pascal's Triangle II
- LeetCode 119. Pascal's Triangle II
- 119. Pascal's Triangle II
- LeetCode 119 Pascal's Triangle II
- [C语言] leetcode 119. Pascal's Triangle II