[LeetCode] Pascal's Triangle II

vector<int> getRow(int rowIndex) {
	vector<int> row;
	row.push_back(1);
	if (rowIndex == 0)
	{
		return row;
	}
	row.push_back(1);
	if (rowIndex == 1)
	{
		return row;
	}
	while (rowIndex >= 2)
	{
		vector<int>::reverse_iterator riter;
		for (riter = row.rbegin(); riter != row.rend()-1; riter++)
		{
			*riter += *(riter+1);
		}
		row.push_back(1);
		rowIndex--;
	}
	return row;
}


与Pascal's Triangle的方法类似的,后续遍历前一行,将每一元素的值置为它与左边一个元素值之和,最后在这一行末尾加上一个元素1,从而得到新的一行。

你可能感兴趣的:([LeetCode] Pascal's Triangle II)