Реальные задачи с собеседований | Java
4.54K subscribers
296 photos
62 videos
2 files
619 links
Буду сюда выкладывать реальные задачи и вопросы с собеседований, без копипаста с интернета и других каналов)

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

Прислать задачи, реклама - @privatevoidmain
Download Telegram
Альфа банк

// у нас есть список целых чисел и мы хотим найти сумму первых 5 нечетных чисел в списке
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

#alfabank
Прислать задачу | Подписаться
🤯9👍5😁1
Тбанк

/*
* Дан массив целых чисел nums.
* Вернуть количество подмассивов, состоящих только из нулей.
* Подмассив — это непрерывная непустая последовательность элементов.
*
* Примеры:
* [1,3,0,0,2,0,0,4] -> 6
* [0]=4 раза, [0,0]=2 раза
*
* [0,0,0,2,0,0] -> 9
* [0]=5 раз, [0,0]=3 раза, [0,0,0]=1 раз
*
* [2,10,2019] -> 0
*
* Ограничения:
* 1 <= nums.length <= 10^5
* -10^9 <= nums[i] <= 10^9
*/
public long zeroFilledSubarray(int[] nums) {
// TODO
}

#tbank
Прислать задачу | Подписаться
❤1
Всех с окончанием рабочей недели)

#fridaymemes
👍19👏9🔥3😁2😢1
Тбанк #repeat
/*
* Даны две строки s и t, состоящие из строчных латинских букв и символа '#'.
* Символ '#' означает нажатие backspace — удаляет предыдущий символ.
* Backspace на пустой строке ничего не делает.
* Вернуть true, если строки равны после применения всех backspace.
*
* Примеры:
* s = "ab#c", t = "ad#c" -> true ("ac" == "ac")
* s = "ab##", t = "c#d#" -> true ("" == "")
* s = "a#c", t = "b" -> false ("c" != "b")
*
* Ограничения:
* 1 <= s.length, t.length <= 200
* s и t содержат только строчные латинские буквы и '#'
*
* Доп. задача: решить за O(n) по времени и O(1) по памяти
*/
public boolean backspaceCompare(String s, String t) {
// TODO
}

#tbank
Прислать задачу | Подписаться
Кто ищет работу, сколько у вас было техсобесов за прошлую неделю?
Anonymous Poll
56%
Посмотреть результат/ не ищу работу
23%
0
6%
1
2%
2
2%
3-4
1%
5-8
1%
больше 8 (пруфы в комменты😅)
10%
.
❤2
Реальные задачи с собеседований | Java
Кто ищет работу, сколько у вас было техсобесов за прошлую неделю?
Сколько собесов было у подписчков за прошлую неделю: как минимум 100

Сколько задач прислали админу:
😁64❤7😢4🤔1
Тбанк
/*
* Дан массив временных интервалов совещаний intervals,
* где intervals[i] = [start, end].
* Найти минимальное количество переговорных комнат,
* необходимых для проведения всех совещаний без конфликтов.
*
* Примеры:
* [[0,30],[5,10],[15,20]] -> 2
* (первое совещание пересекается со вторым и третьим)
*
* [[7,10],[2,4]] -> 1
* (совещания не пересекаются)
*
* Ограничения:
* 1 <= intervals.length <= 10^5
* 0 <= start < end <= 10^6
*
* Доп. задача: решить за O(n log n)
*/
public int minMeetingRooms(int[][] intervals) {
// TODO
}

#tbank
Прислать задачу | Подписаться
❤1
Сбер
//Дан список слов, удалить дубликаты-анаграммы, оставив первое вхождение.
//Сравнение без учёта регистра.

public static void main(String[] args) {
List<String> anagrams = List.of("Race", "NIgHt", "Angle", "CaRe", "angel", "ThiNG");
System.out.println(removeAnagrams(anagrams));
// Ожидаемый результат: ["Race", "NIgHt", "Angle"]
}

#sber
Прислать задачу | Подписаться
🔥5❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Всех с окончанием рабочей недели)

#fridaymemes
😁28😱2😢2
классика со сбера:

1) Написать минимальный код который выведет stackOverFlow
2) Написать свой stack с методами peek, pop, и вывод максимального значения стека

#sber #repeat
Прислать задачу | Подписаться
❤7
Сбербанк.

Дан класс User, который внутри имеет поля String name, int age:
public class User {
private String name;
private int age;
}

Для этого объекта реализованы equals(), hashCode(), а также геттеры и сеттеры. Используется аннотация @Data.

Ниже программный код:
public static void main(String[] args) {
Map<User, String> map = new HashMap<>();
User user = new User("Ivan", 25);

map.put(user, "Premium_Account");
user.setAge(26);

map.put(user, "Ultra_Account");

System.out.println("Result1: " + map.get(user));
System.out.println("Result2: " + map.containsKey(user));
System.out.println("Result3: " + map.size());
}

Расскажи, какие результаты будут отображены на консоль и почему?

#sber
Прислать задачу | Подписаться
😁12❤1👎1
Кукодинг

Всех с окончанием рабочей недели
#fridaymemes
😁27😢1
Сбербанк

Задача на проектирование системы.

Дан файл, который имеет размерность, скажем, более 2 GB.
Содержимое файла - своего рода толковый словарь.
Разделителем между словом и его описанием выступает символ табуляции: "Слово\tОписание".

В файле находятся дубликаты. Нужно его отсортировать и вернуть клиенту обратно.

Пример файла:
Банк Кредитно-финансовое учреждение
Коллапс Внезапное сильное падение кровяного давления
...

Вопросы:
1) Расскажи, какие технологии будешь использовать? Как будешь решать задачу?
2) Напиши программный код на Java.

#sber
Прислать задачу | Подписаться
👍1🤯1
This media is not supported in your browser
VIEW IN TELEGRAM
Всех с окончанием рабочей недели
#fridaymemes
😁31❤5👏4😱1😢1💩1
яндекс #repeat (прислали 2 подписчика)

Реализовать описанный функционал и тесты к нему.
/**
* Банкомат.
* Инициализируется набором купюр и умеет выдавать купюры для заданной суммы, либо отвечать отказом.
* При выдаче купюры списываются с баланса банкомата.
* Допустимые номиналы:
* - 50₽, 100₽, 500₽, 1000₽, 5000₽.
* - 20 EUR, 100 EUR, 500 EUR
*
* Каждая валюта обрабатывается отдельно, обмен валют банкоматом не поддерживается.
*
* Банкомат может использоваться многопоточно (например, резервирование выдачи денег из приложения).
* Поддержку многопоточности можно вынести в отдельную итерацию.
*/

public class ATM {

public ??? withdraw (???) {
//TODO
}
}


#yandex
Прислать задачу | Подписаться
👍4💩1
This media is not supported in your browser
VIEW IN TELEGRAM
Ситуация, которая может случиться с каждым


Всех с окончанием рабочей недели
#fridaymemes
😁23💩8😢5❤1