如果我有这样的字典,
Dictionary<int, string> roadNames = new Dictionary<int, string>();
roadNames.Add(1, "Rosedale Rd");
roadNames.Add(2, "Transmere Rd");
roadNames.Add(3, "Rosedale Rd");
roadNames.Add(4, "Rosedale Rd");
roadNames.Add(5, "Rosedale Rd");
roadNames.Add(6, "Rosedale Rd");
roadNames.Add(7, "Rosedale Rd");
roadNames.Add(8, "Brown Rd");
roadNames.Add(9, "Harold Rd");
是否有 LINQ 解决方案来删除彼此相邻的重复项。我追求的结果是一个包含这个的列表,
Rosedale Rd
Transmere Rd
Rosedale Rd
Brown Rd
Harold Rd
请注意,Rosedale Rd 仍然在列表中两次。这个想法是删除彼此相邻的重复项,在这种情况下,我们将删除项目 4、5、6 和 7。
项目 1 不在项目 3 旁边,因此不会被删除。
更新:
不要担心字典没有被订购。有序列表的解决方案会很好。我可以处理订单。IE
List<string> roadNames = new List<string>()
{
"Rosedale Rd",
"Transmere Rd",
// etc
};