Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 27.03.2015
Сообщений: 28

Различные символы

21.04.2015, 15:17. Показов 768. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят помогите.Нужно посчитать число различных символов в слове.Как посчитать символы в стоке до точки я уже понял! а как посчитать символы в слове пока не пойму.Заранее спасибо!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.04.2015, 15:17
Ответы с готовыми решениями:

Вывести различные символы строк
Добрый день, помоги пожалуйста доработать код. Здесь он вычисляет различные цифры, а нужно чтобы вычилял различные буквы строк. ...

Прочитать файл (символы латинского алфавита) и записать в другой файл все неповторяющиеся символы исходного файла
Прочитать файл (символы латинского алфавита) и записать в другой файл все неповторяющиеся символы исходного файла. Входной и исходный файл...

Дана строка. Подсчитать сколько раз в ней встречаются символы ‘a’, ’b’, ’c’. Символы считать отдельно по каждому
Дана строка. Подсчитать сколько раз в ней встречаются символы ‘a’, ’b’, ’c’. Символы считать отдельно по каждому.

3
34 / 34 / 35
Регистрация: 21.04.2015
Сообщений: 74
21.04.2015, 15:33
Создаеш мапу с ключами - символами из строки, значениями - количеством этих символов, проходиш по строке и кладеш каждый символ в мапу увеличивая количество на 1.
Пример
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
import java.util.HashMap;
import java.util.Map;
 
public class Temp
{    
    
    public static void main(String[] args) {
        String input = "aaaqqeee";
        Map<Character, Integer> map = new HashMap<>();
        
        for(int i = 0; i < input.length(); i++) {
            char c = input.charAt(i);
            if(!map.containsKey(c)) {
                map.put(c, 1);
            }
            else {
                map.put(c, map.get(c) + 1);
            }
        }
        
        for(Character ch: map.keySet()) {
            System.out.println("Character " + ch + " found " + map.get(ch));
        }
    }
}
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
21.04.2015, 16:32
Цитата Сообщение от XoTTaBbI4 Посмотреть сообщение
Нужно посчитать число различных символов в слове.
да просто s.length() - дает тебе искомое количество символов в слове))) Но если тебе надо количество определенных символов, например букв "а" то тут надо немного головой подумать
0
 Аватар для we2seek
84 / 84 / 42
Регистрация: 25.01.2010
Сообщений: 386
22.04.2015, 01:12
http://www.programcreek.com/20... r-in-java/

Добавлено через 48 секунд
http://www.programcreek.com/20... r-in-java/

Добавлено через 1 час 35 минут
Извините за дубли, я обычно по два раза не повторяю. А это что-то инет заглючил на телефоне.
Вот более эффективный метод подсчета основанный на ссылке, которую я опубликовал дважды
Суть в следующем - согласно документации метод put не просто кладет в мапу значение по ключу, а еще и возвращает предыдущее, если там уже что-то валялось, либо null - если до вставки было пусто.
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
package com.we2seek.letterscounter;
 
import java.util.Map;
import java.util.TreeMap;
 
/**
 * Created by well on 22.04.15.
 */
public class App {
 
    // This class used to avoid creating multiple Integer objects because Integer is immutable in java
    private static class MutableInt {
        private int value;
 
        MutableInt(int initValue) {
            value = initValue;
        }
 
        public int get() {
            return value;
        }
 
        public void set(int val) {
            value = val;
        }
 
        public String toString() {
            return Integer.toString(value);
        }
    }
 
    public static Map<Character, MutableInt> countLetters(String word) {
        Map<Character, MutableInt> map = new TreeMap<>();
        for (int i = 0; i < word.length(); i++) {
 
            // we began counting from 1
            MutableInt initValue = new MutableInt(1);
 
            // put method returns previous value if exists or null otherwise
            MutableInt oldValue = map.put(word.charAt(i), initValue);
 
            if (oldValue != null) {
                initValue.set(oldValue.get() + 1);
            }
        }
 
        return map;
    }
 
    public static void show(Map<Character, MutableInt> map) {
        StringBuilder sb = new StringBuilder();
        String newLine = System.getProperty("line.separator");
        for (Map.Entry<Character, MutableInt> pair : map.entrySet()) {
            sb.append(pair.getKey());
            sb.append(": ");
            sb.append(pair.getValue());
            sb.append(newLine);
        }
        System.out.println(sb.toString());
    }
 
    public static void main(String[] args) {
        show(countLetters("aaabbc"));
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.04.2015, 01:12
Помогаю со студенческими работами здесь

Различные символы в строке
Считать строку и вывести количество различных латинских строчных букв. Пример: 8hfhKLDjf --&gt;3. Не использовать множественный тип. Очень...

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

Напечатать все различные символы-цифры, которые не встретились в тексте
Непустой текст из цифр и латинских букв за которым следует точка задан в файле input. Напечатать все различные символы-цифры, которые не...

Добавляя различные символы к заданной строке, сделать из неё палиндром
Объясню смысл условия: Дана строка длинной более 6000 символов. Требуется, добавляя различные символы к строке (только с одной из сторон, в...

Гистограмма частот, с которыми встречаются во входном потоке различные символы
Напишите программу для вывода гистограммы частот, с которыми встречаются во входном потоке различные символы


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru