Реальные задачи с собеседований | Java
Kanalga Telegram’da o‘tish
Буду сюда выкладывать реальные задачи и вопросы с собеседований, без копипаста с интернета и других каналов) Ссылка для друга - https://t.me/+K4vJFdalwlthYTQy Прислать задачи, реклама - @privatevoidmain
Ko'proq ko'rsatish4 354
Obunachilar
+324 soatlar
+47 kunlar
+2030 kunlar
Postlar arxiv
WB #repeat(была подобная задача, но не вб)
Есть матрица n на m. 1-суша, 0-вода. Нужно сосчитать кол-во островов. Остров - это произвольный фрагмент суши, не соединенный с другими участками суши. Связь по диагонали - не считается. Все, что за пределами матрицы - вода Example 1: Input: grid = [ ["1", "1", "1", "1", "0"], ["1", "1", "0", "1", "0"], ["1", "1", "0", "0", "0"], ["0", "0", "0", "0", "0"] ] Output: 1 Example 2: Input: grid = [ ["1", "1", "0", "0", "0"], ["1", "1", "0", "0", "0"], ["0", "0", "1", "0", "0"], ["0", "0", "0", "1", "1"] ] Output: 3#wilberries Прислать задачу | Подписаться
Яндекс #repeat (чуть изменили описание задачи, убрали название "рога и копыта") )
Вы — backend-разработчик в интернет-магазине. Дела идут в гору и магазин решил повысить лояльность покупателей, предоставляя им персональные скидки. К вам обратился product owner с задачей создать простую систему лояльности, которая предоставляет процентную скидку на корзину. Размер скидки зависит от покупателя. Аналитики уже определили, какие скидки должны быть предоставлены покупателям. ## Определения Корзина - список покупок покупателя. Покупка: - id товара - цена - итоговая стоимость c учетом скидки Скидка. Для покупателя может быть задан % скидки (целое число). ## Задача Написать часть новой системы лояльности, которая: - на вход получает id покупателя и корзину - вычисляет и применяет скидки - возвращает корзину, в которой учтены скидки. Скидка учитывается в стоимости покупки#yandex Прислать задачу | Подписаться
Яндекс
Вы — backend-разработчик в интернет-магазинеВы — backend-разработчик в интернет-магазине.
Дела идут в гору и магазин ре
Тбанк
Дан массив натуральных чисел, числа могут повторяться. Необходимо выбрать из них k чисел так, чтобы разность максимального и минимального из выбранных была минимальной. Вернуть эту разность. [10,100,300,200,1000,20,30] k=3 -> 20#tbank Прислать задачу | Подписаться
unknown company #unknown
Небольшая контора предложила решить такую задачу на собесе
1. Метод должен принять на вход путь к локальному файлу в формате xlsx и число N 2. В файле в столбик находятся целые числа 3. Метод должен вернуть N-ное минимальное число из файла 4. Для поиска нельзя использовать библиотечные функции типа сортировки массива, нужно предложить и реализовать эффективный алгоритм (это важно)Прислать задачу | Подписаться
Lada
Несколько вопросов с собеса -
— Что означает буква L в SOLID?
—Когда лучше использовать линкедлист?
— Расскажи про ломбоковскую аннотацию equalsandhashcode ? Плюсы и минусы
— В чем разница findById and getById в спринге?
— Что произойдёт, если в контроллере в маппере обратиться к связи сущности загруженной в сервисе(варианты)?
Собираем дизлайки и какашки, не скупитесь!
cdti #repeat
Необходимо написать функцию, которая проверяет, является ли заданная строка палиндромом.
Прислать задачу | Подписаться
Альфа банка
Сделать ревью, найти проблемы
@RequiredArgsConstructor @RestController("/resize/v1") public class Controller { private final CachedPhotosService cachedPhotosService; @GetMapping("/resized-photo/{photo-id}") public PhootoDTO getResizedPhoto(@PathVariable("photo-id") String photoId) { return cachedPhotosService.iconifiedPhoto(photoId); } } @Component @RequiredArgsConstructor public class CachedPhotosService { private static final String RESIZED_PHOTO_CACHE_NAME = "RESIZED_PHOTO_CACHE_NAME"; private final PhotoRepository photoRepository; private final PhotoValidationService photoValidationService; private final PhotoOperations photoOperations; @Cacheable(cacheNames = RESIZED_PHOTO_CACHE_NAME) public PhotoDTO resizedPhoto(String photoId, int width, int height) { photoValidationService.validateSize(width, height); Photo photo = photoRepository.findById(photoId); PhotoDTO photoDto = ConversionUtils.convert(photo); var resizedPhoto = photoOperations.resize(photoDto, width, height); return resizedPhoto; } public PhotoDTO iconifiedPhoto(String photoId) { return resizedPhoto(photoId, 100, 100); } }Прислать задачу | Подписаться
Кто ищет работу, сколько у вас было техсобесов за эту неделю?
WB
Необходимо перенести все элементы, равные нулю, в конец массива, сохранив порядок остальных элементов.
in: [3, 0, 4, 0, 1] out: [3, 4, 1, 0, 0]#wilberries Прислать задачу | Подписаться
WB
Дали задачку из литкода - https://leetcode.com/problems/number-of-islands
#wilberries
Прислать задачу | Подписаться
WB #sql
таблица employee | name | lang | ——————————-—————————- | Nick | C# | | Nick | SQL | | Eva | Rust | | Vika | SQL | | Ivan | Java | | Ivan | SQL | Надо написать запрос который выберет имена сотрудников, которые знают SQL и ещё хотя бы один любой язык. Считать, что один сотрудник — одно имя.#wilberries Прислать задачу | Подписаться
unknown company #sql
Есть две таблицы: -таблица department с полями department_id, department_name. - таблица employee с полями employee_id, first_name, last_name, salary, department_id1. Написать запрос, который выводит имя, фамилию сотрудника, название отдела и его зарплату 2. Добавить колонку со средней зарплатой по отделу в котором работает сотрудник 3. Вывести по три наиболее оплачиваемых сотрудников из каждого отдела. #unknown Прислать задачу | Подписаться
ВТБ #sql
Таблица orders {id, client_id, amount}, таблица client {id, name} -
Как найти клиентов с самой большой суммой?
#vtb
Прислать задачу | Подписаться
Кто ищет работу, сколько у вас было техсобесов за эту неделю?
itone
На вход приходит список чисел, мы хотим посчитать сумму всех этих чисел, хотим считать это быстро, из-за того, что список большой,решено считать сумму так: мы изначально разбиваем входной список на части, используя для этого метод split (на него время тратить не нужно, он здесь просто чтобы библиотеку никакую не тянуть). Для чего это нам нужно: для того, чтобы каждый подсписок закинуть в отдельный поток где будет посчитана сумма и так 10 раз, когда 10 потоков отработают, мы просто собираем результаты, складываем и получаем итоговую сумму. Вот такая задачка (орфография сохранена) /** * Посчитать сумму элементов списка (более 1 млн. элементов), * используя для этого 10 потоков */ public static long sum(List<Long> numbers) { final int threads = 10; List<List<Long>> subLists = split(numbers, threads); // TODO: make it work! return ???; } private static List<List<Long>> split(List<Long> numbers, int parts) { int size = numbers.size(); int subListSize = (int) Math.ceil((double) size / parts); List<List<Long>> result = new ArrayList<>(parts); for (int i = 0; i < parts; i++) { int fromIndex = i * subListSize; if (fromIndex >= size) { result.add(Collections.emptyList()); } else { int toIndex = Math.min((i + 1) * subListSize, size); List<Long> sublist = numbers.subList(fromIndex, toIndex); result.add(sublist); } } return result; }#itone Прислать задачу | Подписаться
Альфа банк
1) написать, что будет выведено в консоль
public class MainJava { public static void main(String[] args) { List.of("d2", "a2", "b1", "b3", "c") .stream() .map(s -> { System.out.println("map: " + s); return s.toUpperCase(); }) .anyMatch(s -> { System.out.println("anyMatch: " + s); return s.startsWith("A"); }); } }#alfabank Прислать задачу | Подписаться
Сбер
/** * Описание задачи: Требуется реализовать REST endoint для получения списка страховых полисов, которые принадлежат заданному клиенту и являются оплаченными. * Поскольку в системе существует очен (дальше он не дописал) * требуется предусмотреть параметр для ограничения результата **\#sber Прислать задачу | Подписаться
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
