手动设置似乎不是正确的方法。
我知道如何将列表按升序或降序排序,但模4让我感到困惑。
模4是由于这与网格上的节点相邻有关。
我不知道它们最初被放入列表的顺序,因为它是随机的,并且每次都会更改 - 网格连接的程序生成。
我不想要一个新列表,我只想简单地重新排列当前列表。
列表计数为3:
0、1、2
1、2、3
2、3、0
3、0、1
if (acceptedIndicies.Contains(0) && acceptedIndicies.Contains(1) && acceptedIndicies.Contains(2)) // Top-Right-Down
{
// Order List in the sequence
acceptedIndicies[0] = 0;
acceptedIndicies[1] = 1;
acceptedIndicies[2] = 2;
}
else if (acceptedIndicies.Contains(1) && acceptedIndicies.Contains(2) && acceptedIndicies.Contains(3)) // Right-Down-Left
{
// Order List in the sequence
acceptedIndicies[0] = 1;
acceptedIndicies[1] = 2;
acceptedIndicies[2] = 3;
}
else if (acceptedIndicies.Contains(2) && acceptedIndicies.Contains(3) && acceptedIndicies.Contains(0)) // Down-Left-Top
{
// Order List in the sequence
acceptedIndicies[0] = 2;
acceptedIndicies[1] = 3;
acceptedIndicies[2] = 0;
}
else if (acceptedIndicies.Contains(3) && acceptedIndicies.Contains(0) && acceptedIndicies.Contains(1)) // Left-Top-Right
{
// Order List in the sequence
acceptedIndicies[0] = 3;
acceptedIndicies[1] = 0;
acceptedIndicies[2] = 1;
}
2个列表的计数:
0,1
1,2
2,3
3,0
if (acceptedIndicies.Contains(0) && acceptedIndicies.Contains(1))
{
// Order List in the sequence
acceptedIndicies[0] = 0;
acceptedIndicies[1] = 1;
}
else if (acceptedIndicies.Contains(1) && acceptedIndicies.Contains(2))
{
// Order List in the sequence
acceptedIndicies[0] = 1;
acceptedIndicies[1] = 2;
}
else if (acceptedIndicies.Contains(2) && acceptedIndicies.Contains(3))
{
// Order List in the sequence
acceptedIndicies[0] = 2;
acceptedIndicies[1] = 3;
}
else if (acceptedIndicies.Contains(3) && acceptedIndicies.Contains(0))
{
// Order List in the sequence
acceptedIndicies[0] = 3;
acceptedIndicies[1] = 0;
}