當前位置:成語大全網 - 新華字典 - C#中怎樣統計數組中壹個壹維數組中每個元素出現的次數?

C#中怎樣統計數組中壹個壹維數組中每個元素出現的次數?

遍歷數組,並用字典集合Dictionary<T>存放每個元素出現的次數統計結果。

例如,統計壹個整型數組中每個數組元素出現的次數,實現方法如下:

(1)在Visual Studio 中創建壹個“控制臺應用程序”項目

(2)Program.cs

using?System;

using?System.Collections.Generic;

using?System.Linq;

namespace?ConsoleApplication1

{

class?ItemInfo

{

///?<summary>

///?ItemInfo?類記錄數組元素重復次數

///?</summary>

///?<param?name="value">數組元素值</param>

public?ItemInfo(int?value)

{

Value?=?value;

RepeatNum?=?1;

}

///?<summary>

///?數組元素的值

///?</summary>

public?int?Value?{?get;?set;?}

///?<summary>

///?數組元素重復的次數

///?</summary>

public?int?RepeatNum?{?get;?set;?}?

}

class?Program

{

static?void?Main(string[]?args)

{

//?待統計的整型數組

int[]?a?=?{?1,?1,?1,?3,?1,?2,?2,?1,?3,?4,?2,?1,?5,?3,?4?};

//?集合?dic?用於存放統計結果

Dictionary<int,?ItemInfo>?dic?=?

new?Dictionary<int,?ItemInfo>();

//?開始統計每個元素重復次數

foreach?(int?v?in?a)

{

if?(dic.ContainsKey(v))

{

//?數組元素再次,出現次數增加?1

dic[v].RepeatNum?+=?1;

}

else

{

//?數組元素首次出現,向集合中添加壹個新項

//?註意?ItemInfo類構造函數中,已經將重復

//?次數設置為?1

dic.Add(v,?new?ItemInfo(v));

}

}

foreach?(ItemInfo?info?in?dic.Values)

{

Console.WriteLine("數組元素?{0}?出現的次數為?{1}",?

info.Value,?info.RepeatNum);

}

}

}

}

(3)運行結果