— Наконец-то ты освободился. Устал уже держать в уме твои задачи. Вот тебе ещё парочка, чтобы не расслаблялся:
Решаем задачи о списках
Комментарии (872)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
cookoofs
10 февраля, 15:06
тест коммента
0
Сергей Кирсанов
2 февраля, 18:20
Проверка символа: str.contains("л")
А по ArrayList удобно идти с конца - тогда удаление текущего элемента или добавление (i+1)'ой копии на цикл не влияет.
0
Даниил Синицын
26 марта 2023, 08:32
Уважаемые авторы курса. Откорректируйте проверку заданий. В последней задаче у меня правильное решение, однако проверку не проходит, т.к. логика решения, видимо несколько отличается от "эталонной". Пришлось запустить с листингом из подсказки, чтобы закрыть задачу.
Текст моего решения.
public class Solution {
public static void main(String[] args) throws IOException {
//напишите тут ваш код
ArrayList<String> list = new ArrayList<String>();
Scanner sc = new Scanner(System.in);
for (int i = 0; i < 10; i++) {
list.add(sc.next());
}
for (int i = 1; i < 10; i++) {
if (!(list.get(i).length() >= list.get(i-1).length())) {
System.out.println(i);
break;
}
}
}
}
+2
Зепп Бранниган Admin в JavaRush Moderator
27 марта 2023, 07:11
Ваш код работает неправильно, когда выводимые строки содержат пробелы, например:
2222
111 111
3 3
и т.д.
+2
Yury Seid
5 января 2023, 21:58
ArrayList динамически растягивает размер своего массива при добавлении и соответственно динамически, сразу же (!) его сокращает при удалении своего элемента из. Сокращенную форму цикла (х : х) при манипуляциях с отдельными элементами использовать невозможно. Поэтому до цикла-перебора создаем новый отдельный массив-лист и добавляем или не добавляем в него элементы. И соответственно его же потом и возвращаем. Так же используем операторы перехода в Java.
0
partiec
10 декабря 2022, 12:48
Проблема:
Когда с клавиатуры ввожу в список строки,
а потом вывожу список на консоль, то получается:
[стока 1, ,строка 2, ,строка 3]
и всё! А должно быть 5 строк.
Получается - каждое нажатие Enter дает еще пустую строку,
которая прячется между моими. И не придерешься!
5 строк,
как и планировалось! Тока не те...
Задачки успешно проходят javarush тестирование!😃👍
А если отдельно запускаю, то вот такая хрень😐
Какие будут мнения?
(заранее спасибо!)
0
Сергей
13 декабря 2022, 18:00
Трудно сказать, не увидев того что ты написал. Ну либо моих знаний не достаточно чтобы подсказать. Скинь свой код
0
partiec
14 декабря 2022, 22:59
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
ArrayList<String> list = new ArrayList<>();
for (int i = 0; i < 5; i++) {
list.add(reader.readLine());
}
System.out.println(list);
}
}
Когда ввожу третью строку и жму Enter, программа выводит:
[стока 1, ,строка 2, ,строка 3]
и завершается
0
Рыбалко Иван
14 февраля 2022, 13:22
вступайте: группа про стажировку
0
Yury Seid
5 января 2023, 21:59
"Ссылка недействительна или устарела" (на момент написания этого сообщения).
0
Деня
6 февраля 2022, 04:46
хоть скриншоть на резюме 🤣 с первой попытке первую хард решил не запуская не тестируя.
+8
Ihor
12 июня 2022, 15:29
УМНИЧКА😘
0
Макс
16 декабря 2021, 20:12
На самом деле - прежде чем решать подобные задачи нужно пройти полный курс java collections framework где нибудь на стороннем сайте онлайн - университета. Я например, сначала прочитал и законспектировал теорию с Алишева, включая платный курс по углубленым знаниям java, затем частично проштудировал книгу Шилдта, пообщался с человеком, который в теме, и лишь потом пришел решать сюда задачи, чтобы понять - что я пропустил в теоретической подготовке. И такие дыры вылезают...
+3
YesOn
18 декабря 2021, 02:02
Глубоко копнул) Я пока посмотрел канал GMByte (он довольно старенький, но для начала и общего понимания пойдёт). Алишева ещё не пересмотрел, рандомно высматриваю по темам, но тоже хочу всё по порядку пройти, чтобы проще было здесь задачи решать и теорию воспринимать по множествам ссылок от проЦессора😁
С моей "базой" задачи именно этого уровня пока идут трудновато.
0
Alexey
28 января 2022, 20:30
Всё тут нормально решается без дополнительной литературы. Если так сейчас глубоко вникать в каждую тему, то так Java Syntax будешь лет 5 изучать.
+13
Ilya Capercaillie
19 марта 2022, 18:55
Решил всё без collections. Всё решается методами Strings и ArrayList, но погуглить и почитать пришлось. Мне например тяжелее по памяти просто код печатать, грамматику языка ещё не выучил(((
0
Павел Соловьёв докер - механизатор в Порт
15 апреля 2022, 05:03
учу java Syntax 5 лет //_-
никуда не тороплюсь, но каждый раз ловлю себя на мысли что надо быть проще (:
+3
Grock
18 августа 2022, 16:50
Закон Паре́то (принцип Парето, принцип 80/20) — эмпирическое правило, названное в честь экономиста и социолога Вильфредо Парето, в наиболее общем виде формулируется как «20 % усилий дают 80 % результата, а остальные 80 % усилий — лишь 20 % результата».
На практике жизни, как ни странно, это правило часто подтверждает свою состоятельность.
0
in-Qui-rinG
15 сентября 2022, 18:34
Тут очень плохие лекции за исключением лекций Нудлса. Ничего не понятно. Решаю задачи часто не знаю всего необходимого "арсенала". Почти всё приходится читать на стороне. Мало примеров с разбором вариантов. Полгода по 3-4 часа в день дошел до 13 уровня.
0
Даниил Синицын
26 марта 2023, 08:49
Просто надо понимать логику создателей курса. Я тоже до конца нее не понимал, пока не ознакомился с одной из теорий обучения, которой, видимо придерживаются авторы.
Согласно этой теории, надо давать обучающимся задание "на попробовать", с условием, что уровня их знания не достаточно для ее решения. Чтобы дать им ознакомиться с постановкой задачи и подогреть интерес к изучению "недостающего" материала. После этого дать недостающий материал, а затем закрепить этот материал на дополнительной практике.
Другое дело, что тут не объясняется нигде этот принцип. Но судя по тому, как тут раздается материя, решения задач на уровне easy как раз должно хватать для прохождения курса. Видимо подразумевается, что к решению более сложных задач можно вернуться потом, после углубленной подачи материала. Но это в том случае, если с первого раза знаний не хватило.
Мне пока хватает, хотя приходится немного почитать "на стороне".
+1
Aleksei Reinsalu
11 ноября 2021, 15:53
если нет необходимости в особом порядке перебора или опоре на индексы элементов, абстрагируйтесь от лишней информации заменив for на foreach. Если же порядок и/или количество важны, то foreach вряд ли подойдет. Обращаться к индексам удобнее в циклах со счетчиком.
+2
Евгений N
6 апреля 2022, 07:20
--если нет необходимости в особом порядке перебора
или другой критерий:
если коллекция не изменяется (печатаем или копируем в другую или что-то ищем/считаем) то foreach, иначе цикл с индексами.
+2
Red Baron Backend Developer
4 ноября 2021, 10:09
На мой взгляд, требования к задаче "Р или Л" нуждаются в уточнении:
вместо "Метод fix должен удалять из списка строк все слова, содержащие букву "р"..." следует указать "Метод fix должен обеспечить ПРОПУСК тех слов из списка, которые..."
+4
Alexey
28 января 2022, 20:32
До этого нужно самому додуматься
0