【发布时间】:2020-11-16 18:58:51
【问题描述】:
我知道有大量帖子涉及在列表中查找重复项。 这是一个 Find continuous duplicates in a List
我想要更多:返回一个列表,其中包含重复字符串的位置。
如果列表类似于 [0]=AAA [1]=BBB [3]=CCC [4]=AAA [5]=CCC 我想要一个像这样的扩展;
var dupList = lst.FindDuplicatesReturnPositions();
dupList = 0,4,5 甚至更好的 1,5,6。
提前致谢
帕特里克
添加 我明白我没有说清楚为什么是 1,5,6 而不是 0,4,5。 因此,作为代码,我更喜欢 0、4、5,但我必须将其应用于托盘矩阵。对于非编码员的客户,单元格从 1 开始,而不是从 0 开始。所以增加数字没什么大不了的,但如果位置从 1 开始,那就更好了
【问题讨论】:
-
我不清楚您将如何获得这些索引。 0,4,5 和 1,5,6。另外我们都是程序员,我们希望看到示例数据编写和实现为实际代码
-
0,4,5 将是 AAA,AAA,CCC。 1,5,6 将是 BBB,CCC,??? (因为您的示例数据中不包含索引 6)。我看不出“AAA”和“CCC”或“BBB”和“CCC”如何被视为字符串重复。
-
你为什么不直接修改你链接的方法呢?与其让它返回值,不如返回位置。显然,要实现这一点,请避免使用之前对列表进行排序的方法。
-
请看我的编辑。希望它现在被清除
-
抱歉,我不明白为什么在重复列表中应该同时存在 0 和 4(对于 AAA),而不是同时存在 3 和 5(对于 (CCC))
标签: c# list duplicates