【发布时间】:2013-10-10 03:13:48
【问题描述】:
这就是我想做的。
我在一个列表中有大量的数字,但它有一个增加或减少的序列。
例如, 100 200 300 400 500 600 500 400 300 200 100 500 700 800 900
假设这些值存储在列表或数组中。我怎样才能将这些分成多个数组或由序列组成的列表。
例如,列表1:100 200 300 400 500 600 清单 2:500 400 300 200 100 清单 3:500 700 800 900
这就是我所做的。我被卡住了。
for (int i = 0; i < p.Count - 1; i++)
{
double v = p.ElementAt(i);
if (initialP > v)
{
if (low == 1)
{
sep.Add(sep_index);
low = 0;
}
else
{
}
high = 1;
}
if (initialP < v)
{
if (high == 1)
{
sep.Add(sep_index);
high = 0;
}
low = 1;
}
initialP = v;
sep_index++;
if (i == p.Count - 2)
{
sep.Add(sep_index);
}
}
【问题讨论】:
-
制作列表列表,解析列表然后循环遍历,如果列表中的下一项与当前模式匹配,则将其添加到解析列表,否则将解析列表添加到列表列表并将其“重置”到新列表
-
这是一个有趣的问题
-
天啊..我已经尝试了很长一段时间了 Sayse..我只是想不通..可以提供一个小的书面算法吗?非常感谢..
标签: c# arrays algorithm list multidimensional-array