C# - Find the mode of numbers in an array - Simple Method
C# - Find the mode of numbers in an array - Simple Method
CODE
using System;
class Program
{
static void Main(string[] args)
{
int[] numbers = { 3,4,5,6,7,23,12,34,4 };
int mode = GetMode(numbers);
Console.WriteLine(mode);
//Output
//4
}
private static int GetMode(int[] numbers)
{
int count = numbers.Length;
//Sort the numbers
for (int i = 0; i < count - 1; i++)
{
for (int j = i; j < count; j++)
{
if (numbers[i] > numbers[j])
{
int temp = numbers[i];
numbers[i] = numbers[j];
numbers[j] = temp;
}
}
}
int mode = numbers[0];
int modeOccurences = 1;
int runningValue = numbers[0];
int runningOccurences = 1;
for (int i = 1; i < count; i++)
{
if (numbers[i] == runningValue)
runningOccurences++;
else
{
if (runningOccurences > modeOccurences)
{
modeOccurences = runningOccurences;
mode = runningValue;
}
runningOccurences = 1;
runningValue = numbers[i];
}
}
return mode;
}
}
Comments
Post a Comment