Tôi có Array này tôi đã viết một hàm MostFreq lấy một mảng số nguyên và trả về 2 giá trị: số thường xuyên hơn trong mảng và tần suất kiểm tra mã này i worte bạn nghĩ sao? có cách nào tốt hơn để làm điều đó không?Số thường xuyên nhất trong một mảng
static void Main()
{
int [] M={4,5,6,4,4,3,5,3};
int x;
int f=MyMath.MostFreq(M,out x);
console.WriteLine("the most Frequent Item = {0} with frequency = {1}",x,f);
}
=====
trong Mymath lớp
public static int MostFreq(int[] _M, out int x)
{
//First I need to sort the array in ascending order
int Max_Freq, No_Freq, i, k;
Array.Sort(_M);
k = _M[0];
Max_Freq = 0; i = 0; x = 0;
while (i < _M.Length)
{
//No_Freq= the frequency of the current number
No_Freq = 0;
//X here is the number which is appear in the array Frequently
while (k == _M[i])
{
No_Freq++;
i++;
if (i == _M.Length)
break;
}
if (No_Freq > Max_Freq)
{
//so it will be printed the same
Max_Freq = No_Freq;
x = k;
}
if (i < _M.Length) k = _M[i];
}
return (Max_Freq);
}
Tại sao điều này được đánh giá thấp và đánh dấu xúc phạm? – FlySwat
@Brandon Bạn đang sử dụng phiên bản C# nào? –
Tôi vừa chỉnh sửa các thẻ để mọi người biết nên nhắm vào phiên bản nào. –