【发布时间】:2015-11-24 13:55:55
【问题描述】:
基本上,我在 C# 中有一个列表,其中包含看起来像这样的结构(代码可能不适合语法)
public struct Numbers {
public int DistanceFromArbitraryPoint;
public int X;
public int Y;
}
我想做的是对列表进行排序:
- 按距离排序列表(已经这样做没问题)。
- 对于距离
结果是这样的:
Distance 12, x 0, y 0;
Distance 4, x 20, y 20;
Distance 6, x 0, y 3;
第一步之后:
Distance 4, x 20, y 20;
Distance 6, x 0, y 3;
Distance 12, x 0, y 0;
在第 2 步之后(如果距离
Distance 6, x 0, y 3; // lower X and Y Sum, goes first
Distance 4, x 20, y 20;
Distance 12, x 0, y 0; // Distance higher than 10, remains unsorted
【问题讨论】:
-
您不过滤这三个项目,但这听起来好像您想要这样做:" 对于每个具有距离的数字
-
另外,"while not create a new list." 是否意味着不允许使用带有final
list = query.ToList()的LINQ? -
你能分享一下你到目前为止所尝试的吗?让我们不要重复你的努力,除了你应该展示一些研究和失败的尝试。
-
@SimonShine 不适用于 orderby thenby。因为有一个条件。不满足条件的物品应保持不变。