|
|
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
javapecker, дело во внешнем цикле, я тестировал на 15 элементах - так и осталось... замените на i<map.size(); должно работать! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2013, 17:13 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
rema174, задачка еще актуальна? Вот мой вариант метода removeTheFirstNameDuplicates: public static void removeTheFirstNameDuplicates( HashMap<String, String> map ): Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. За один проход коллекции формируем множество из дублей имен. Потом перебирая дубли вызываем метод для их удаления из мапы. Код получился короче и нет вложенных циклов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2013, 16:24 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
SergeyKandalintsev, не совсем я понял зачем setNames, но дело в том то автору темы нужно удалять не дубликаты, а все значения, которые повторяются. Например, если в мапе два Семена, то удалить нужно обоих. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2013, 17:06 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
javapeckerне совсем я понял зачем setNames, в setNames попадут все имена, а в duplicateNames только те, которые встречаются в мапе 2 и более раза. javapeckerно дело в том то автору темы нужно удалять не дубликаты, а все значения, которые повторяются. Например, если в мапе два Семена, то удалить нужно обоих. все так и произойдет: Код: java 1. 2. 3. 4. последовательно перебираем элементы множества duplicateNames (Имена которые в исходной мапе встречаются более одного раза) метод removeItemFromMapByValue( map, name ) удаляет из мапы все пары ключ(Фамилия) --> значение(Имя) с заданным именем name. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2013, 17:23 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
Сюда же отпишу. А как удалить все повторы ключей при количестве вхождений ключа больше заданного n? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2014, 14:51 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
umka_max, Map не поддерживает множественное вхождение ключа. Так что количество повторов всегда 1. Читайте javadoc. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2014, 15:22 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
0FD, Да ладно! Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. Не взлетит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2014, 15:26 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
umka_max, Не! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2014, 15:28 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
0FD, Как "Не!"??? Из работающего примера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2014, 15:32 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
0FD, Что тут не нравится? Value ж разные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2014, 15:33 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
umka_maxСюда же отпишу. А как удалить все повторы ключей при количестве вхождений ключа больше заданного n? Блин! Извиняюсь, туплю к вечеру. :) Так надо: А как удалить все повторы ключей, при количестве вхождений ключа для которых количество значений больше заданного n? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2014, 15:49 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
umka_max0FD, Как "Не!"??? Из работающего примера. Что тут не нравится? Value ж разные. Даже не знаю что Вам ответить, читай javadoc :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2014, 15:53 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
umka_max, Вам надо запретить менять значение у ключа после нескольких раз? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2014, 10:01 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
Я фигею с вас, господа не знающие SQL-я. У вас задача лежит в плоскости создания структуры данных которая не позволяет вставлять дубликаты values. Тоесть по смыслу нужен unique-констрейнт на коллекцию. По смыслу это аналог Код: java 1. Не нужно делать никакие процедуры removeTheFirstNameDuplicates! Делайте сразу стуктуру данных которая НЕ ПОЗВОЛЯЕТ дублировать values во время вставок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2014, 11:28 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
maytonЯ фигею с вас, господа не знающие SQL-я. У вас задача лежит в плоскости создания структуры данных которая не позволяет вставлять дубликаты values. Тоесть по смыслу нужен unique-констрейнт на коллекцию. По смыслу это аналог Код: java 1. Не нужно делать никакие процедуры removeTheFirstNameDuplicates! Делайте сразу стуктуру данных которая НЕ ПОЗВОЛЯЕТ дублировать values во время вставок.Хм... Вот теперь вопрос на понимание: ежели по условиям задачи необходимо из массива объектов с разными ключами, но с одинаковыми значениями найти количество этих самых одинаковых значений? или если ключ есть переменная типа "numeric"(ну так просто символьная строка содержащая числа, которая генерируется уникальным образом по нарастающей), и Вам необходимо без использования SQL найти максимальный ключ при группировке по значению. Понятно, что на SQL это решается одной строкой... Теперь это-же нужно решить на Java. Так что не надо пытаться притянуть SQL там где он не всегда и нужен. Рассматривайте задачу именно в плоскости Java, без использования сторонних технологий... Тогда это будет честно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2014, 06:39 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
umka_maxТак надо: А как удалить все повторы ключей, при количестве вхождений ключа для которых количество значений больше заданного n? Это просто, если только определить, какой ключ (какие ключи) стоит удалять из множества ключей сопоставленных с одним "значением" (или с эквивалентными значениями). например, 1->"a" 2->"a" 3->"a" А надо не более 2-х повторов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2014, 12:32 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
Alex Kuznetsov, я и говорю. Делайте ПРАВИЛЬНУЮ СТРУКТУРУ данных. С ограничениями по уникальности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2014, 13:23 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
mayton, Ну тут вопрос не только в ограничении. Может быть ситуация - старые отбрасывать, а новые добавлять и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2014, 13:33 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
То-же самое. Структура данных. А то у вас выглядит так. "- А давайте-ко прогузим в мемори гигабайт физлиц а потом покумекаем чо как там с дубликатами делать". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2014, 13:40 |
|
||
|
HashMap - повторы значений
|
|||
|---|---|---|---|
|
#18+
maytonА то у вас выглядит так. "- А давайте-ко прогузим в мемори... Или так - отсеять те команды которые на групповом этапе набрали одинаковое количество очков. Согласитесь, вешать констреинт на то, что команды могут набирать одинаковое количество очков не комильфо. Все зависит от задачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2014, 21:56 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38564705&tid=2127614]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
167ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 285ms |
| total: | 543ms |

| 0 / 0 |
