C# 如何在for循环中将最后一个元素添加到列表中
我得到一个数字列表,我需要找到最大的递增元素序列,并在控制台上打印出来。如果有两个长度相等的序列,那么我应该打印左边第一个序列 这就是我所尝试的:C# 如何在for循环中将最后一个元素添加到列表中,c#,C#,我得到一个数字列表,我需要找到最大的递增元素序列,并在控制台上打印出来。如果有两个长度相等的序列,那么我应该打印左边第一个序列 这就是我所尝试的: for (int i = 0; i < numbers.Count - 1; i++) { if (numbers[i] < numbers[i+1] && numbers[i] > 0) { counterFirstSequence++; firstSequence.
for (int i = 0; i < numbers.Count - 1; i++)
{
if (numbers[i] < numbers[i+1] && numbers[i] > 0)
{
counterFirstSequence++;
firstSequence.Add(numbers[i]);
}
}
for(int i=0;i0)
{
反优先顺序++;
添加(编号[i]);
}
}
但是,因为我只转到numbers.Count-1
,所以最后一个元素从未被添加。for(int i=0;ifor (int i = 0; i < numbers.Count - 1; i++)
{
if (numbers[i] <= 0) continue;
if (numbers[i] >= numbers[i+1]) continue;
counterFirstSequence++;
firstSequence.Add(numbers[i]);
//if the second to last element on the list meets the condition then the last
//element is also valid
//for a zero based index, the second to last element would have the index
//numbers.Count - 2
if(i == numbers.Count - 2)
{
counterFirstSequence++;
firstSequence.Add(numbers[i + 1]);
}
}
{
如果(数[i]=数[i+1])继续;
反优先顺序++;
添加(编号[i]);
//如果列表中倒数第二个元素满足条件,则最后一个元素
//元素也是有效的
//对于从零开始的索引,倒数第二个元素将具有该索引
//数字,数到2
if(i==numbers.Count-2)
{
反优先顺序++;
添加(数字[i+1]);
}
}
最后一项永远不会小于下一项,因为没有下一项。如何确定是否应添加该元素?如果最后一个元素<比前一个元素,则应添加该元素。例如:如果输入是7 3 5 8-1 0 6 7,那么输出应该是:3 5 6 7,但是我得到的是3 5 6,所以我需要做的是以递增的顺序获得一个数字序列的计数。
numbers[I+1]
在I==numbers.count-1
时会抛出一个索引自动异常,所以这根本不起作用。你的规格不是很清楚。你想要实现什么?你在评论中给出的例子应该是问题的一部分,但对我来说没有多大意义。这应该会给出你想要的结果。非常感谢你的帮助!