亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

如何在c#中實現自定義的去重函數

c#
小樊
83
2024-09-20 07:26:47
欄目: 編程語言

在C#中,實現自定義的去重函數可以使用多種方法

using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
        int[] numbers = { 1, 2, 3, 4, 4, 5, 6, 6, 7, 8, 9, 9 };
        int[] uniqueNumbers = RemoveDuplicates(numbers);

        Console.WriteLine("Original array:");
        foreach (int number in numbers)
        {
            Console.Write(number + " ");
        }

        Console.WriteLine("\nUnique array:");
        foreach (int number in uniqueNumbers)
        {
            Console.Write(number + " ");
        }
    }

    static int[] RemoveDuplicates(int[] numbers)
    {
        // 使用HashSet去重
        HashSet<int> uniqueNumbersSet = new HashSet<int>(numbers);
        int[] uniqueNumbersArray = uniqueNumbersSet.ToArray();

        return uniqueNumbersArray;
    }
}

在這個示例中,我們使用了HashSet類來實現去重。HashSet是一個無序且不包含重復元素的集合。首先,我們將原始數組轉換為HashSet,這將自動刪除所有重復元素。然后,我們將HashSet轉換回數組并返回結果。

如果你需要保留原始數組的順序,你可以使用以下方法:

static int[] RemoveDuplicates(int[] numbers)
{
    // 使用Dictionary去重并保留順序
    Dictionary<int, bool> uniqueNumbersDict = new Dictionary<int, bool>();

    foreach (int number in numbers)
    {
        if (!uniqueNumbersDict.ContainsKey(number))
        {
            uniqueNumbersDict[number] = true;
        }
    }

    int[] uniqueNumbersArray = uniqueNumbersDict.Keys.ToArray();
    return uniqueNumbersArray;
}

在這個示例中,我們使用了Dictionary類來實現去重。我們遍歷原始數組,并將每個元素添加到Dictionary中。如果元素已經存在于Dictionary中,我們跳過它。最后,我們將Dictionary的鍵轉換為數組并返回結果。這將保留原始數組的順序。

0
简阳市| 正阳县| 南阳市| 囊谦县| 达州市| 徐闻县| 鄂伦春自治旗| 本溪市| 来宾市| 通州区| 宜兰市| 建平县| 永登县| 闸北区| 吴桥县| 大英县| 北安市| 新化县| 闵行区| 平阴县| 玛曲县| 吉安市| 甘谷县| 山阴县| 青州市| 海阳市| 宁德市| 屯昌县| 若尔盖县| 晋江市| 确山县| 汝城县| 秭归县| 广东省| 文化| 合江县| 乳山市| 江孜县| 资兴市| 甘孜| 云安县|