我有以下列表:如何使用相同的整體部分刪除數字並保持列表中的第一次出現?
data = [293.0, 293.1, 293.5, 390.0, 390.2, 390.4, 391.4]
我想刪除具有相同整數部分的值,並將其存儲到二級列表,第一個值存儲到主列表。
結果:
main = [293.0, 390.0, 391.4]
secondary = [293.1, 293.5, 390.2, 391.4]
這裏是我的程序:
public static void checkForOverlap(List<double> data)
{
List<double> main = new List<double>();
List<double> secondary = new List<double>();
//pointer holds the first occured value
double pointer;
bool firstOccurence = true;
pointer = Convert.ToInt32(data[0]);
for (int i = 0; i < data.Count; i++)
{
if ((data[i] - pointer) < 1 && (data[i] - pointer) == 0 && firstOccurence == true)
{
main.Add(data[i]);
firstOccurence = false;
}
if (data[i] > 1)
{
pointer = Convert.ToInt32(data[i]);
firstOccurence = true;
}
else {
secondary.Add(data[i]);
}
}
}
究竟是什麼問題?你的代碼有什麼問題? –
如果你的代碼已經工作,這個問題可能屬於http://codereview.stackexchange.com/ –
@ Pierre-LucPineault它只是將數據列表的第一個值添加到主列表中。 –