string s = "aaarrrgggghhhh";
int[] arr = new int[124];
for (int i = 0; i < s.Length; i++)
{
arr[(int)s[i]]++;
}
string output="";
for (int i = 65; i < 124; i++)
{
if (arr[i] > 0)
{
char c = (char)(i);
output = output + c.ToString() + arr[i].ToString();
}
}
Дайте мне знать, если вам нужно объяснение.Пояснение: значение ascii {az, AZ} находится в диапазоне 64-123.Поэтому, когда персонаж найден, я увеличиваю значение arr [(int) character)].Наконец, я считаю, сколько символов было там, используя индекс.