Реальные задачи с собеседований | Java
2.9K subscribers
252 photos
24 videos
385 links
Буду сюда выкладывать реальные задачи и вопросы с собеседований, без копипаста с интернета и других каналов)

Ссылка для друга - https://t.me/+K4vJFdalwlthYTQy

Прислать задачи, реклама - @privatevoidmain
Download Telegram
СБЕР

Что будет выведено на экран?
Ссылка на код - online-ide.com/Sqk90tRr8C
#sber #multithreading
Отп банк

Дан массив интов. Найти индекс элемента в массиве
#otpbank
Мегафон

Для набора данных об автомобилях, состоящего из регистрационного знака и года выпуска вычислить медианное значение года выпуска по каждому региону
Например для данных автомобилей долнжо быть выведено-
99 - 2003
177 - 2010

весь код - online-ide.com/bWs3wjTCXE |#megafon

______________
Подписаться
Яндекс.

Дана строка, содержащая буквы //A-Z//:
"AAAABBBCCXYZDDDDEEEFFFAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB"

Нужно написать функцию RLE, которая выведет строку вида: "A4B3C2XYZD4E3F3A6B28"

Еще надо выдавать ошибку, если на ввод приходит недопустимая строка.

Примечания:
1. Если символ встречается один раз, он остается неизменным
2. Если символ встречается более одного раза, к нему добавляется число повторений
#yandex

______________
Подписаться
Иннотех

Найти имена всех людей и сумму их платежей, если такие имеются
CREATE TABLE Persons (
id bigint primary key,
name text
);

CREATE TABLE Payment (
id bigint primary key,
person_id bigint,
value decimal
);


#sql | #innotech | Подписаться
cleverdata

Что будет выведено на экран?

#cleverdata | Подписаться
Если вам нравится этот канал, поддержите нас голосами 🤝
➡️ https://t.me/boost/java_interviews

__________________________________
Каждый премиум-аккаунт имеет бесплатные 4 голоса, которые он может подарить каналу или группе
Please open Telegram to view this post
VIEW IN TELEGRAM
отр

Напишите запрос для получения всех постледних поставок товаров

#sql| #otr
вроде Сбер (точно не помню)

Объяснить, что здесь не так, и дать варианты исправления

#sber | Подписаться
Cleverdata

Посчитать количество пар по цветам
online-ide.com/CK8q9ZLznQ

#cleverdata | Подписаться
ВТБ
Что будет выведено на экран?

#vtb | Подписаться
Реальные задачи с собеседований | Java
вроде Сбер (точно не помню) Объяснить, что здесь не так, и дать варианты исправления #sber | Подписаться
этот вопрос вызвал много обсуждений, поэтому решили выложить ответ в виде поста

- приватный конструктор
- приватный метод с @Transactional (не будет работать с приватным методом)
- внедрение бина через поле (это корректно, но лучше внедрять бин через конструктор)

По коду понятно, что нужно при инициализации бина, нужно выполнить какое-то действие в транзакционном методе initService(). При вызове этого метода из конструктора, могут возникнуть проблемы из-за не полной инициализации других сервисов и отсутствия транзакции. Мы можем воспользоваться аннотацией @PostConstruct, но нужно учесть, что @Transactional в таком случае тоже не будет работать. Чтобы это исправить можно сделать новый класс или воспользоваться self-injection.

Код после исправлений (с self-injection) -
Бастион

Попросили сделать ревью кода - написать комментарии без исправления

Ссылка на весь код - online-ide.com/OKMwtVSUrd

#bastion | Подписаться
Юнидата

Задача.
Есть два листа m1 и m2. Надо отсортировать m2 так, чтобы в начале в нем были элементы из m1, а потом все остальные отсортированные в натуральном порядке.

#unidata| Подписаться
Юнидата #sql

Есть такая таблица:
id updateDate status
1 08.09.2022 OK
1 07.09.2022 NOT OK
2 08.09.2022 NOT OK
2 07.09.2022 TIMEOUT
...

Надо написать запрос, который вернёт последнюю по дате запись по каждому id
#unidata| Подписаться
Яндекс.
Задача на полиндром

Необходимо написать функцию, которая проверяет, является ли заданная строка палиндромом, при этом ограничение по памяти — нельзя изменять входную строку или использовать дополнительные структуры данных.

Дополнительные условия:

Строка может содержать буквы как кириллицы, так и латиницы.
Буквы могут быть в разном регистре (например, "Казак" и "казак" считаются палиндромом).
Игнорировать знаки препинания, такие как запятая, апостроф, восклицательный знак, вопросительный знак и т. д.

Пример:

Вход: "Казак!"
Выход: true (игнорируя знак ! и регистр, это палиндром).
Ограничения:

Время выполнения: O(n), где n — длина строки.
#yandex |Подписаться
ВТБ
Что будет выведено на экран?

#vtb | Подписаться
Cleverdata

Что будет выведено на экран?

#cleverdata | Подписаться
отр

Написать метод, который принимает список строк и подсчитывает, сколько раз каждое слово/фраза встречается в списке. Игнорировать пробелы и регистр

ссылка на код- online-ide.com/3Y4bFSXCwG

#otr| Подписаться
ВТБ

Написать метод, который преобразует строку "cdabcdji" к виду "abcdij", то есть удалить повторяющиеся символы и вывести результат в отсортированном виде

#vtb | Подписаться
спортмастер.

Задача 1.
Даны два итератора. Реализовать итератор, который может объединить два данных итератора: позволяет сначала получить элементы из первого, затем из второго.

Задача 2.
Тоже самое, только количество итераторов может быть любым

Ссылка на код - online-ide.com/JRx0dgPu27
#sportmaster