LeetCode119:杨辉三角II

LeetCode119:杨辉三角II

    解析:

        此题和之前118类似,只是该题只需要输出第K行即可,因此不需要保存所有行的元素。不再需要定义一个二维数组,只需要定义两个一维数组,用来存储本行和上一行的值就可以了。

        代码 :

vector<int> getRow(int rowIndex) 
{
	vector<int> result;
	if (rowIndex < 0)//特殊的两种情况
		return result;
	result.push_back(1);
	if (rowIndex == 0)
		return result;
	vector<int> lastLine = result;
	for (int i = 1; i <= rowIndex; i++)
	{
		result = vector<int>(i+1, 1);
		for (int j = 1; j < i; j++)//每行不超过i+1个元素,每行最后一个元素为1
		{
			result[j] = lastLine[j - 1] + lastLine[j];
		}
		lastLine = result;//更新上一行元素
	}
	return result;
}