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

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

Прислать задачи, реклама - @privatevoidmain
Download Telegram
Реальные задачи с собеседований | Java
Инсайрес Задача 1 Требования: есть 2 связанные таблицы 1) таблица User; поля Id, Name; 2) таблица UserTask; поля Id, UserId, Name Задание: написать SQL запрос который вернет в обратном алфавитном порядке имена всех пользователей у которых более 5 задач…
Инсайрес

Задача 2
Требования:
Создать консольное приложение со следующей функциональностью:
- предлагает ввести размер массива сообщением "введите размер массива:"
- инициализирует целочисленный массив с заданным размером случайными значениями
- выводит массив в консоль с заголовком "инициализированный массив:"
- сортирует массив от меньшего к большему методом пузырька
- выводит массив в консоль с заголовком "отсортированный массив:"
Требование к коду:
- код должен соответствовать принципу единой ответственности

Задание:
- уточнить требования если необходимо
- оценить время выполнения задания
- написать и продемонстрировать код
👍1
Очень мало задач😏
1😁14
KVANDO Technologies

Напишите функцию, которая принимает на вход словарь, содержащий ключи и значения, и возвращает список всех пар "ключ-значение". Если значение является вложенным словарем, функция должна рекурсивно извлекать ключи и значения из него.

Вход:
data = {'a': 1, 'b': {'c': 2, 'd': {'e': 3}}, 'f': 4}

Выход: [('a', 1), ('с', 2), ('e', 3), ('f', 4)]

Подписаться
🤯1
Сбер #sql #repeat?

-- Две таблицы
-- Company: id, title, sector
-- Vacancy: id, id_company, name, salary

-- Написать запрос, который выведет список компаний из отрасли IT,
-- со средним доходом по вакансиям, названия которых содержат слово Java, более $1000

#sber| Прислать задачу | Подписаться
1👍1
Альфабанк

Написать метод, проверяющий является ли а степенью b

// a = 9, b = 3, true
// a = 8, b = 3, false
public boolean isPow(int a, int b) {

}

#alfabank
👍5😱1
Северсталь

Сделать код-ревью

Прислать задачу | Подписаться
👍5
Альфа-банк

// Что будет выведено и с чем могут быть сложности

public final class Main {

public static void main(String[] args) {
Set<String> threads = new HashSet<>();

var integers = IntStream.range(0, 7000).boxed().collect(Collectors.toList());
integers.stream().parallel().forEach(v -> threads.add(Thread.currentThread().getName());

System.out.println(threads.size());

//System.out.println(threads);
}
}


#alfabank | Подписаться
👍3
ВК

/*
Задача:

Реализовать функцию, которая для двух списков идентификаторов вычисляет последовательность мощностей
их пересечения по префиксам.

Описание:
- Даны два списка top1 и top2 длины N.
- На шаге i берём префиксы длины i из обоих списков, рассматриваем их как множества и находим мощность
(размер) их пересечения.
- Числа в списках могут повторяться, но при вычислении пересечения учитываются только уникальные элементы.
- В результате получается список из N чисел, где каждое число — это размер пересечения соответствующих префиксов.

Ограничения:
- Гарантируется, что длины входных списков одинаковы, проверять это не требуется.

Примеры:

Вход: [1, 2, 3, 4], [3, 4, 5, 6]
Выход: [0, 0, 1, 2]

Вход: [1, 1, 1], [1, 1, 1]
Выход: [1, 1, 1]

Вход: [10, 7, 9], [1, 7, 3]
Выход: [0, 1, 1]

Вход: [3, 4, 5, 6], [1, 2, 3, 4]
Выход: [0, 0, 1, 2]

Вход: [1], [2]
Выход: [0]
*/

#vk| Подписаться
как дела с собесами?
похоже не очень - за неделю ни одной новой задачки🫡
😱8🤷‍♂11
Кто в этом году находил работу java-разработчиком, проголосуйте плиз

Откуда вы нашли работу -

❤️ — hh
— тг
👍 — linkedin
👏 — по рефералке/через знакомого
🤔 — другое/напишу в комменты
Please open Telegram to view this post
VIEW IN TELEGRAM
85👏23🤯7👍55😱4
IT-ONE

• На входе список целых чисел (может содержать null — их игнорируем).
• Нужно вернуть список k наиболее часто встречающихся чисел, отсортированных:
1. по убыванию частоты;
2. при равной частоте — по возрастанию самого числа.
• Если numbers == null или пустой список, то вернуть пустой список.
• Если k <= 0, вернуть пустой список.
• Если уникальных чисел меньше k, вернуть все.


#itone | Подписаться
👍1
Яндекс

Вы — backend-разработчик в финтех компании.
Компания предоставляет платежные услуги и должна контролировать лимиты пользователей.
Product owner просит создать систему проверки лимитов перед проведением платежей.

### Определения

Платеж:
- сумма (в рублях)
- тип операции (только списание)
- timestamp

Лимиты пользователя:
- дневной лимит по сумме
- максимальный размер одной операции

История операций:
- список совершенных платежей пользователя

### Задача
Написать систему проверки лимитов, которая:
- на вход получает платеж и id пользователя
- проверяет все установленные лимиты
- возвращает результат: можно ли провести операцию
- если нельзя, то указывает причину (какой лимит превышен)

### Ограничения
- в рамках данной задачи считаем, что все платежи одного пользователя происходят строго последовательно.
Во время проверки лимита не может быть проведен платеж того же пользователя.

#yandex
😱7
ИнформЗащита.

/*

Даны два массива, содержащие числа от 0 до 9. Эти массивы представляют собой целые неотрицательные числа, разбитые в массив по десятичным разрядам.

Например:

[1, 5, 2] (число 152)

[4, 2, 6] (число 426)

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

[5, 7, 8] (число 578)

Числа, которые представлены массивами, могут быть любыми, в том числе очень большими (тысячи разрядов = элементов массива).

Импортировать другие классы нельзя.

*/

Подписаться
👍2😱1
ВК на проект макс

/**
* Написать метод, который заменит все пробелы в строке на "%20" inplace.
* На вход подается строка с зарезервированными под расширение символами.
* <p>
* Пример:
* Input: ['j','a','v','a',' ', 't','a','s','k', ' ', ' ']
* Output: ['j','a','v','a','%','2','0','t','a','s','k']
* <p>
* Ограничения: O(1) по памяти, O(N) по времени, менять исходную строку можно.
*/

#vk
👎20👍42😱1
Сбер

//Найти в списке чисел ближайшее значение к заданному systemId.
// Пример для List.of(3, 5, 7, 9, 12, 15) и systemId=10, должно вернуться 9
private Integer findClosestNumber(List<Integer> numbers, int systemId) {
Integer closestNumber = null;
// TODO . Реализовать логику
return closestNumber;
}


#sber| Прислать задачу | Подписаться
👍3😁1😱1
Unknown (анонимно, финтех-компания)
/**
* Задача: Сгруппировать студентов по номеру группы.
*
* Описание:
* Дано: список объектов Student, каждый из которых содержит имя и номер группы.
* Необходимо создать map в которой:
* - Ключ: номер группы.
* - Значение: список студентов, относящихся к этой группе.
*/

class Student {
String name;
Integer group;
}

List<Student> students = Arrays.asList(
new Student("Ivan", 1),
new Student("Alex", 1),
new Student("Nikita", 3),
...
);

// Пример получения студентов по группе из созданной Map
// map.get(1) = [Student("Ivan", 1), Student("Alex", 1)]
// map.get(3) = [Student("Nikita", 3)]
Map<Integer, List<Student>> map =

#unknown | Прислать задачу | Подписаться
😁4👍1😱1
СБЕР #repeat

"Дана строка состоящая из скобок [ ] ( ) { } , определить правильно ли расставлены скобки. Правильность расстановки определяется, если каждая открывающаяся скобка закрывается скобкой такого же типа и в правильном порядке. Например:"([]){}"-true, "(()]"-false"


#sber| Прислать задачу | Подписаться
👍3😱11