首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在c#中获取列表中重复项的索引

在C#中获取列表中重复项的索引可以通过以下步骤实现:

  1. 创建一个List对象,并向其中添加元素。
  2. 创建一个Dictionary对象,用于存储列表中每个元素的索引。
  3. 遍历列表中的每个元素,判断该元素是否已经存在于Dictionary中。
  4. 如果元素已经存在于Dictionary中,则表示该元素是重复项,将其索引添加到一个新的List中。
  5. 如果元素不存在于Dictionary中,则将其添加到Dictionary中,键为元素的值,值为元素的索引。
  6. 最后,返回存储重复项索引的List。

以下是一个示例代码:

代码语言:csharp
复制
using System;
using System.Collections.Generic;

class Program
{
    static List<int> GetDuplicateIndexes(List<int> list)
    {
        List<int> duplicateIndexes = new List<int>();
        Dictionary<int, int> indexDict = new Dictionary<int, int>();

        for (int i = 0; i < list.Count; i++)
        {
            if (indexDict.ContainsKey(list[i]))
            {
                duplicateIndexes.Add(indexDict[list[i]]);
                duplicateIndexes.Add(i);
            }
            else
            {
                indexDict.Add(list[i], i);
            }
        }

        return duplicateIndexes;
    }

    static void Main(string[] args)
    {
        List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 2, 6, 7, 3, 8, 9, 4 };
        List<int> duplicateIndexes = GetDuplicateIndexes(numbers);

        Console.WriteLine("Duplicate indexes:");
        foreach (int index in duplicateIndexes)
        {
            Console.WriteLine(index);
        }
    }
}

这段代码中,我们创建了一个名为GetDuplicateIndexes的方法,该方法接受一个整数列表作为参数,并返回一个存储重复项索引的列表。我们使用一个Dictionary对象来存储列表中每个元素的索引,然后遍历列表中的每个元素,判断其是否已经存在于Dictionary中。如果存在,则将其索引添加到重复项索引列表中。最后,我们在Main方法中调用GetDuplicateIndexes方法,并打印出重复项的索引。

请注意,这个示例代码中没有提及任何特定的云计算品牌商或相关产品,因为问题的内容与云计算领域无关。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券