Упражнения на Java: поиск индекса первого неповторяющегося символа в заданной строке
Java Basic: упражнение 187 с решением
Напишите программу на Java, чтобы найти индекс первого неповторяющегося символа в данной строке.
Иллюстрированная презентация:
Пример решения:
Java-код:
import java.util.*;
public class Solution {
public static void main(String[] args) {
String str1 ="google";
System.out.println("Index of first non-repeating character in '" + str1 + "' is: " + first_unique_character(str1));
}
public static int first_unique_character(String str1) {
HashMap < Character, Integer > map = new HashMap < > ();
for (int i = 0; i < str1.length(); ++i) {
char chr = str1.charAt(i);
map.put(chr, map.containsKey(chr) ? map.get(chr) + 1 : 1);
}
for (int i = 0; i < str1.length(); ++i) {
if (map.get(str1.charAt(i)) < 2) {
return i;
}
}
return -1;
}
}
Пример вывода:
Индекс первого неповторяющегося символа в «Google»: 4
Блок - схема:
Редактор кода Java:
Компания: Microsoft Amazon Bloomberg
Внесите свой код и комментарии через Disqus.
Предыдущий: Напишите программу на Java, чтобы проверить, являются ли две данные строки изоморфными или нет.
Далее: Напишите программу на Java, чтобы найти все начальные индексы анаграмм данной строки в другой данной строке.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code