Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
 Аватар для iWord
10 / 10 / 2
Регистрация: 21.12.2010
Сообщений: 108

Логика, подтолкните на идею.

05.01.2012, 08:18. Показов 1014. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Появилась задача вывести элемент которые повторяются в массиве , и сколько раз.Думал , окей не проблема , и написал простой метод.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public void povtor(double[] factor){
        double[] factorx = factor;
        int iterator = 0;
        for (int i = 0;i < count;i++){
            iterator = 0;
            for (int j = 0;j<count;j++){
                if (factorx[i] == factor[j]){
                    iterator++;
                }
            }
        System.out.println(String.format("%.5f",factor[i])+"\t"+iterator);
        }
 
    }
Да , работает, но не так как хотелось бы.Выводит каждый элемент и сколько повторился в виде
-1,27101 4
-1,27101 4
-1,27101 4
-1,27101 4
-1,07249 5
-2,17902 6
-1,07249 5
-2,17902 6
-2,17902 6
-1,30447 1
-1,07249 5
-1,07249 5
-2,17902 6
-1,07249 5
-0,83556 1
-2,17902 6
-2,17902 6
-1,98050 14
-1,89314 1
-1,98050 14
-0,33214 1
-1,98050 14
-1,67852 2
-1,98050 14
-1,98050 14
-2,17196 1
-1,98050 14
-0,57199 2
-1,98050 14
Вот кусочек чего выврдит. Это не правильно.
вместо:
-1,27101 4
-1,27101 4
-1,27101 4
-1,27101 4
хочется:
-1,27101 4
Подкиньте плиз идею.

Добавлено через 6 минут
Думаю, что надо каким то образом складывать эти данные 1 раз, но не пойму куда и как логично сделать.

Добавлено через 1 час 41 минуту
А смотрите , ведь можно просто удалить ненужные элементы?

Добавлено через 1 час 56 минут
Сделал удаление повторяющихся.Теперь не пойму куда счетчик прикрутить %(
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
25
public void povtor(double[] factor){
        int iterator;
        int[] dubCount = new int[count];
        Arrays.sort(factor);
        Vector<Double> vector = new Vector<>();
        for (int j = 0;j<count;j++){
            vector.add(factor[j]);
        }
 
        for (int i = 0; i < vector.size(); i++){
            iterator=0;
            if (vector.size() == i+1)
                break;
 
            if (vector.get(i).equals(vector.get(i+1))){
                vector.remove(i);
                iterator++;
                i--;
            }
 
        }
        for (int i = 0; i< vector.size();i++){
            System.out.println(vector.get(i));
        }
    }
Добавлено через 2 часа 18 минут
Всем спасибо , все сам сделал
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
25
26
27
28
29
30
31
32
33
34
35
public double[][] povtor(double[] factor){
        int iterator;
 
        Arrays.sort(factor);
        Vector<Double> vector = new Vector<>();
        for (int j = 0;j<count;j++){
            vector.add(factor[j]);
        }
 
        for (int i = 0; i < vector.size(); i++){
 
            if (vector.size() == i+1)
                break;
 
            if (vector.get(i).equals(vector.get(i + 1))){
 
                vector.remove(i);
                i--;
            }
        }
        double[][] countx = new double[vector.size()][2];
        for (int i = 0; i< vector.size();i++){
            iterator=0;
            for (int j = 0;j<count;j++){
                if (vector.get(i).equals(factor[j])){
                    iterator++;
                }
            }
        countx[i][1] = Double.parseDouble(String.valueOf(iterator));
        }
        for (int i = 0;i<vector.size();i++){
            countx[i][0] = vector.get(i);
        }
        return countx;
    }
Может кому понадобится.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.01.2012, 08:18
Ответы с готовыми решениями:

Подтолкните на решение. узнать площадь сечения
Добрый день, подтолкните пожалуйста на решение задачи: Через концы трех ребер прямоугольного параллелепипеда, которые выходят с одной...

Подтолкните мне на решения данной задачки
Шаги Эта задача из главы &quot;Безумное чаепитие&quot; учебника &quot;Алгоритмы и структуры данных&quot;. - Ну, ладно, засиделась я с вами тут, -...

Момент инерции (Подтолкните пожалуйста на мысль)
Определить момент инерции. Jш=\frac{2}{5}{m}_{1}R^2 Jст=\frac{{m}_{2}L^2}{2} Jo={m}_{1}{m}_{2}\frac{(Rl)^2}{5} ...

2
Добрый самаритянин
 Аватар для John_Pa9JIbHuK
1107 / 622 / 139
Регистрация: 31.03.2009
Сообщений: 2,567
05.01.2012, 12:17
Что касается первого куска кода:
1) double[] factorx = factor, зачем?
2) for (int j = 0;j<count;j++) следует записать так: for (int j = i;j<count;j++), что бы не сравнисать элементы несколько раз
1
 Аватар для lemegeton
4903 / 2696 / 921
Регистрация: 29.11.2010
Сообщений: 5,783
06.01.2012, 19:16
Цитата Сообщение от iWord Посмотреть сообщение
Может кому понадобится.
Как-то очень уж через универсальный интерфейс. Если можно использовать контейнеры, тогда и делать через map.

Java
1
2
3
4
5
6
7
8
9
10
    public static Collection<Double> findDuplicates(Collection<Double> source) {
        Map<Double, Integer> map = new HashMap<Double, Integer>();
        for (Double number : source)
            map.put(number, (map.get(number) == null) ? 1 : map.get(number) + 1);
        Collection<Double> duplicates = new LinkedList<Double>();
        for (Map.Entry<Double, Integer> i : map.entrySet())
            if (i.getValue() > 1)
                duplicates.add(i.getKey());
        return duplicates;
    }
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.01.2012, 19:16
Помогаю со студенческими работами здесь

Как добратся до накопителя (стример), подтолкните меня в нужном направлении
Итак, о вводных стоит только сказать, что не писал на делфи я уже лет 12-14. Ранее если и писал, то не шибко крутые проекты в плане...

Подскажите идею
Здравствуйте,подскажите как лучше такое реализовать. Нужно написать аналог простого текстового редактора,есть textarea div и кнопка в...

Подскажите идею
Нужна идея для создания программы. Концепция такая: создать программу используя класс, содержащий как минимум 8 методов. Пример:...

подскажите идею
есть мемо в которое вводится какой-то текст этот текст передается в виде строки как поделить эту строку,чтобы он отобразился в другом...

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


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru