|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
10.11.2017, 09:26 | #1 |
Регистрация: 10.11.2017
Сообщений: 6
|
Голову сломал. Как определить общие элементы множества строк
Добрый день!
Прошу помощи. Имеется база данных в excel из двух столбцов. 1й - номер строки, 2ой - содержит 30 чисел от 1 до 90. Числа в строке не повторяются. Как определить какие 3,4,5,6... числа совпадают в максимальном количестве строк? Пример(кол-во строк > 1000): Строка 1: 28 39 51 72 89 5 12 23 32 67 18 45 59 76 87 8 36 42 68 90 13 24 43 53 71 15 29 34 63 77 Строка 2: 15 33 43 53 74 27 31 44 67 82 5 20 69 77 88 9 19 57 65 86 21 46 56 62 71 12 37 48 79 89 Строка 3: 2 42 64 75 83 9 14 32 61 85 13 27 31 40 59 6 29 49 79 90 7 22 35 56 81 16 41 50 63 77 Строка 4: 14 23 40 73 88 8 52 64 72 87 27 32 47 51 69 18 26 57 66 75 11 22 39 45 86 7 35 46 76 83 Строка 5: 4 11 30 78 90 7 25 43 67 85 17 45 53 60 70 16 26 38 50 71 20 31 49 61 86 6 12 54 66 79 Строка 6: 7 33 45 62 90 24 31 55 71 88 1 15 29 68 70 18 27 38 67 83 6 26 48 51 64 11 37 46 50 77 Строка 7: 18 23 34 41 90 9 15 24 50 69 6 32 60 71 85 5 10 22 56 63 1 26 39 49 83 44 58 67 75 82 Строка 8: 6 29 32 44 66 36 49 52 71 85 12 53 64 73 86 26 35 46 55 88 5 13 23 51 74 7 19 48 65 90 Строка 9: 6 28 37 50 61 4 38 51 78 80 11 26 41 67 85 2 44 59 79 90 3 16 24 32 82 30 45 53 60 74 Строка 10: 19 49 69 75 80 7 10 25 33 82 20 32 44 59 73 23 31 57 61 70 2 18 48 58 85 5 14 37 65 84 Строка 11: 4 35 40 57 60 2 11 29 42 87 13 25 37 76 86 17 46 58 67 80 28 31 41 70 84 3 15 38 54 72 Строка 12: 3 17 20 42 79 15 25 52 65 88 33 59 68 77 87 7 24 31 48 89 6 10 66 71 82 28 30 41 53 62 Строка 13: 26 31 50 60 88 15 39 40 54 65 1 29 49 73 80 2 35 66 76 86 14 28 42 58 72 9 17 32 45 85 Строка 14: 9 15 45 66 87 1 16 27 35 57 38 47 55 71 88 17 32 50 60 70 7 28 48 52 83 22 31 40 64 72 Строка 15: 6 19 32 52 86 12 22 56 66 77 7 36 45 78 84 15 25 69 70 90 9 17 30 42 57 37 53 62 75 80 Строка 16: 9 17 26 37 65 23 46 59 75 88 3 35 55 71 80 14 28 30 47 57 6 27 42 79 81 7 11 39 68 85 Строка 17: 10 20 34 54 68 11 28 39 78 80 4 47 52 60 90 14 53 69 77 81 6 15 31 56 87 22 37 40 62 76 Строка 18: 2 16 53 68 74 25 38 43 79 82 6 30 41 54 62 9 26 49 78 86 8 32 56 60 87 11 44 52 66 73 Строка 19: 3 25 33 71 80 1 21 41 51 74 12 34 59 64 85 10 24 46 60 70 8 31 58 77 86 11 38 47 66 83 Строка 20: 25 45 51 65 90 21 37 40 59 66 1 11 39 71 85 2 14 36 62 83 8 10 43 73 84 22 35 41 52 79 Можно посчитать каких чисел больше. Но нужно именно, чтоб найти совокупность из нескольких(например какие 3, или 4, или 5, или 6 числел) чисел которые входят в максимальное число строк Последний раз редактировалось ArtemSkudalov; 10.11.2017 в 10:28. |
10.11.2017, 09:54 | #2 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Первое что придумывается - словарь чисел с коллекцией номеров строк. В финале (или в процессе) выявляем максимальные коллекции.
P.S. Если числа в строках уникальны, то в словарь можно набирать строку номеров строк (в едином формате), измерять длину этой строки.
webmoney: E265281470651 Z422237915069 R418926282008
|
10.11.2017, 10:00 | #3 |
Регистрация: 10.11.2017
Сообщений: 6
|
Числа в строке не повторяются. А можно подробнее пожалуйста? с каким нибудь простеньким примером.
|
10.11.2017, 10:09 | #4 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Так пример не с меня
Впрочем я его уже нашёл на планете...
webmoney: E265281470651 Z422237915069 R418926282008
|
10.11.2017, 10:25 | #5 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Код:
webmoney: E265281470651 Z422237915069 R418926282008
Последний раз редактировалось Hugo121; 10.11.2017 в 10:35. |
10.11.2017, 10:34 | #6 |
Регистрация: 10.11.2017
Сообщений: 6
|
Спасибо! Это макрос? А в каком виде он выдаст информацию?
Можно например параметр задавать количество совокупных чисел? И выводить эти числа и количество строк |
10.11.2017, 10:37 | #7 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Пожалуйста.
Да, это макрос. Чуть изменил вывод - теперь будет сообщение. Параметр задавать в этой реализации нельзя, но думаю можно нагородить, но уже некогда...
webmoney: E265281470651 Z422237915069 R418926282008
|
10.11.2017, 10:43 | #8 |
Регистрация: 10.11.2017
Сообщений: 6
|
Большое спасибо!
Начинаю изучать макросы) |
10.11.2017, 10:48 | #9 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Промежуточный вариант - вывод в окно отладки.
Можно всё это загрузить в массив (или например на лист), отсортировать по убыванию, взять сколько нужно первых строк. Код:
webmoney: E265281470651 Z422237915069 R418926282008
|
10.11.2017, 14:48 | #10 |
Регистрация: 10.11.2017
Сообщений: 6
|
Спасибо! Но к сожалению выдает не тот результат.
Взял выборку из 1000 строк. Выдает количество каждого числа по отдельности, а не в совокупности. То-есть нужно например: В 900 строках находятся числа (вместе): 6, 30, 55, 70, 87 В 700 строках находятся ....... А выдает количество по отдельности. Файл прикрепил Последний раз редактировалось ArtemSkudalov; 10.11.2017 в 14:54. |
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вроде легко..сломал голову | UnknownA | Общие вопросы по Java, Java SE, Kotlin | 2 | 24.06.2014 03:05 |
Форма IMAGE BMP сломал голову | jin_jin | Мультимедиа в Delphi | 1 | 15.02.2013 20:29 |
Всю голову сломал с индексацией сайта | engineer_pro | PHP | 4 | 17.08.2012 21:20 |
Не могу разобраться с ошибками, голову сломал | Cyber | Общие вопросы C/C++ | 8 | 14.02.2011 16:40 |
Всю голову сломал | lesha_firs | Общие вопросы Delphi | 6 | 17.06.2009 16:59 |