gpt4 book ai didi

.net-2.0 - 在 .NET 2.0 中组合两个 List 的好方法?

转载 作者:行者123 更新时间:2023-12-04 23:33:27 25 4
gpt4 key购买 nike

我有两个列表需要形成其联合,但我在 .NET 2.0 中,因此 Union() 方法似乎已失效。这些是整数列表,因此相等比较没有问题。有什么好的方法可以解决这个问题?

最佳答案

怎么样(使用字典键作为哈希表):

public static List<T> Union<T>(List<T> first, List<T> second) {
List<T> newList = new List<T>(first.Count + second.Count);
Dictionary<T, object> firstItems = new Dictionary<T, object>(first.Count);

foreach (T item in first) {
newList.Add(item);
firstItems.Add(item, null);
}

foreach (T item in second) {
if (!firstItems.ContainsKey(item)) {
newList.Add(item);
}
}

return newList;
}

这将保持 firstsecond 中的项目顺序,同时仍然使用 O(1) 检查列表之间的重复项目

关于.net-2.0 - 在 .NET 2.0 中组合两个 List<T> 的好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1777310/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com