Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/15: Рейтинг темы: голосов - 15, средняя оценка - 4.73
15 / 9 / 1
Регистрация: 23.02.2012
Сообщений: 135

Как найти самые часто встречающиеся цифры

09.01.2013, 07:54. Показов 2831. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть файл в нем цифры:
Кликните здесь для просмотра всего текста
12
29
2
15
25
14
7
29
24
20
20
15
19
0
9
4
23
17
18
0
23
13
6
3
15
9
28
8
1
15
11
23
0
9
10
20
36
35
0
25
22
34
10
6
12
8
15
17
23
17
7
16

Нужно найти самые часто встречающиеся и рассортировать их в этом порядке, без повторов.
Как это можно сделать?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.01.2013, 07:54
Ответы с готовыми решениями:

Самые часто встречающиеся 24 символа кодировать по 5 бит. А все остальные по 10 бит
Требуется: самые часто встречающиеся 24 символа кодировать по 5 бит. А все остальные по 10 бит. Дешифровка тоже нужна Помогите...

Найти самые часто встречающиеся стрижки у каждого из клиентов
MS Access Здравствуйте, работаю с базой данных access, в этой базе данных есть таблица (отчёт), которая содержит ФИО, стрижки, дата....

Указать наиболее часто встречающиеся цифры числа
всем привет. только начинаю изучать java, возникли конкретные трудности с этой задачей, помогите пожалуйста: дано натуральное число N....

4
 Аватар для quman
28 / 3 / 0
Регистрация: 08.01.2013
Сообщений: 13
09.01.2013, 08:24
Я попробую объяснить словами, позже может быть напишу код.

Все цифры считываются в первый массив. Создается пустой второй массив такого же размера, каждый элемент его будет содержать кол-во каждой цифры. Пишем двойной цикл, оба переберают эл-ты первого массива, во внутреннем проверяется условие: если цифры совпадают, кол-во увеличивается на 1. В итоге в первом массиве цифры, во втором
их кол-во. Теперь отсортируем второй по убыванию, одновременно сортируя первый в соответствии со вторым. И наверно сразу можно убрать повторяющиеся
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
09.01.2013, 08:38
Лучший ответ Сообщение было отмечено mik-a-el как решение

Решение

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
 
namespace ConsoleApplication60
{
    public class Program
    {
        private static void Main()
        {
            var a = File.ReadAllLines("C:\\input.txt").Select(int.Parse);
            var dict = new Dictionary<int, int>();
            foreach (int i in a)
                if (dict.ContainsKey(i))
                    dict[i]++;
                else
                    dict.Add(i, 0);
            var result = dict.ToList().OrderByDescending(x => x.Value).Select(x => x.Key);
            foreach (int i in result)
                Console.WriteLine(i);
            Console.ReadKey();
        }
    }
}
1
 Аватар для quman
28 / 3 / 0
Регистрация: 08.01.2013
Сообщений: 13
09.01.2013, 11:38
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
using System;
 
class main
{
    public static void Main()
    {
        int[] a = new int[] {12,29,2,15,25,14,7,29,24,20,20,15,19,
                             0,9,4,23,17,18,0,23,13,6,3,15,9,28,8,
                             1,15,11,23,0,9,10,20,36,35,0,25,22,34,
                             10,6,12,8,15,17,23,17,7,16};
        int[] b = new int[a.Length];
        bool r = false;
        for(int i = 0; i < a.Length; i++)
        {
            b[i] = 0;
            for (int j = 0; j < b.Length; j++)
                if (a[j] == a[i]) b[i]++;
        }
        Array.Sort(b,a);
        for (int i = a.Length - 1; i >= 0; i--)
        {
            for (int j = i + 1; j < a.Length; j++)
            {
                if (a[j] == a[i])
                {
                    r = true;
                    break;
                }
            }
            if (!r) Console.WriteLine(Convert.ToString(a[i]) + " - " + Convert.ToString(b[i]));
            r = false;
        }
        Console.ReadKey();
    }
}
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
09.01.2013, 15:47
Вариант Psilon'a, но словарь взвалили на сторону линка:
C#
1
2
3
var query = File.ReadAllLines("C:\\input.txt").Select(int.Parse).GroupBy(x => x).OrderBy(g => g.Count());
foreach (var group in query)
   Console.WriteLine("{0} ({1})", group.Key, group.Count());
Чтобы по несколько раз не пересчитывать количество чисел, можно делать выборку в анонимный класс.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.01.2013, 15:47
Помогаю со студенческими работами здесь

Указать наиболее часто встречающиеся цифры числа N
Дано натуральное число N. Указать наиболее часто встречающиеся цифры числа N. В задаче используется целочисленная переменная N,...

Найти самые часто повторяющиеся слова в Memo
Нужно найти самые часто повторяющиеся слова в Memo. Подскажите, как это можно сделать?

В массиве найти наиболее часто встречающиеся числа
В массиве целых чисел с количеством элементов N(N вводится с клавиатуры) найти наиболее часто встречающиеся числа. если таких чисел...

В тексте найти символы, встречающиеся наиболее часто
В тексте найти символы, встречающиеся наиболее часто. Символы вводятся с клавиатуры.

Найти и вывести на консоль символы, наиболее часто встречающиеся в заданной строке
В тексте найти и напечатать символы, встречающиеся наиболее часто. Помогите !


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru