Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

โปรแกรม C# หาตัวเลขซ้ำทั้งหมดในอาร์เรย์จำนวนเต็ม

กำหนดอาร์เรย์มีตัวซ้ำ:

int[] arr = { 24, 10, 56, 32, 10, 43, 88, 32 };

ใช้ Dictionary นับจำนวน:

var d = new Dictionary<int, int>();
foreach(var res in arr) {
    if (d.ContainsKey(res))
        d[res]++;
    else
        d[res] = 1;
}

ตัวอย่าง

using System;
using System.Collections.Generic;
namespace Demo {
    public class Program {
        public static void Main(string[] args) {
            int[] arr = { 24, 10, 56, 32, 10, 43, 88, 32 };
            var d = new Dictionary<int, int>();
            foreach(var res in arr) {
                if (d.ContainsKey(res))
                    d[res]++;
                else
                    d[res] = 1;
            }
            foreach(var val in d)
                Console.WriteLine("{0} occurred {1} times", val.Key, val.Value);
        }
    }
}

ผลลัพธ์

24 occurred 1 times
10 occurred 2 times
56 occurred 1 times
32 occurred 2 times
43 occurred 1 times
88 occurred 1 times