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

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

Прислать задачи, реклама - @privatevoidmain
Download Telegram
IT ONE

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

class Program {

public static void main(String[] args) {

try {
try {
throw new Exception("a");
} finally {
if (true) {
throw new IOException("b");
}
System.out.println("c");

}
} catch (IOException e) {
System.out.println(e.getMessage());

} catch (Exception e) {
System.out.println("d");
System.out.println(e.getMessage());
}

}
}

#itone
Прислать задачу | Подписаться
3👏2
Unknown company (анонимно, мед. компания) #sql

=================
Appointment
=================
id
patient_id
doctor_id
date
=================

=================
Doctor
=================
id
full_name
=================

Нужно найти врачей, которые 2-10-2025 осуществили больше 10 приемов.

Вывести id доктора, его имя, количество приемов.

#unknown
Прислать задачу | Подписаться
4👍2
Сбер #sql

Вывести всех студентов которые хоть раз сдали экзамен

Students
-id pk
-name varchar
-phone varchar

exams
-id pk
-ref_students fk
-discipline varchar
-mark int not null

#sber
Прислать задачу | Подписаться
👍4👎1
Как у вас в компании с сокращениями, увольнениями жавистов в 2025?
Anonymous Poll
48%
Посмотреть результат
27%
Не было скоращений
7%
Меня сократили
17%
Были сокращения
👍5😱1
IT ONE #repeat

Стандартные вопросы по работе транзакшнал -
public class BeanA() {
private BeanB b;
}

@Transactional
public void m1(List list) {
for (Integer i : list) {
b.m2();
}
}

public class BeanB() {
@Transactional
public void m2(Integer i) {
// Добавляем запись в таблицу
}
}

#itone
Прислать задачу | Подписаться
4
This media is not supported in your browser
VIEW IN TELEGRAM
Как владельцы Макбуков видят твой Lenovo ThinkPad в модной кофейне:


Всех с окончанием рабочей недели)

#fridaymemes
😁284
Сбер #sql

Какие индексы нужны для этих запросов?
CREATE TABLE products (
id SERIAL NOT NULL,
name TEXT(255) NOT NULL,
price FLOAT NOT NULL,
creation_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
is_active BOOLEAN
);

SELECT * FROM products WHERE price > 100 AND creation_time >= CURDATED - IN
SELECT * FROM products WHERE price > 1000;
SELECT * FROM products WHERE creation_time >= CURDATED - INTERVAL 1 WEEK;

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

1 Задачка с матрицей ин-тов найти максимальную сумму пересечения столбца и строки(все элементы из строки + все элементы из столбца) была аналогия типо ладья в какой-то клетке нужно максимум посчитать

2 проверить что односвязный список является палиндромом

#tbank
Прислать задачу
| Подписаться
😁4👍1
it one

1. классика с массивом

2. Как избежать дедлока?
private void move(Account a1, Account a2, int summa) {
synchronized (a1) {
synchronized (a2) {
// Проверки
a1.money = a1.money + summa;
}
a2.money = a2.money + summa;
}
}

Прислать задачу | Подписаться
Статистика для java-миддлов с hh🫡

Количество вакансий сократилось в два раза по сравнению с 2024 и в 5 раз по сравнению с 2021
😢54😁5👎2🔥1🤯1
статистика с hh для java-сеньоров🫡
😱26👎3🔥1
Альфа-банк

//1. напишите свою реализацию метода equals
class Person {
private String firstName;
private String surName;
private String secondName;

@Override
//напишите свою реализацию
}
}

#alfabank | Подписаться
👍1
Реальные задачи с собеседований | Java
Альфа-банк //1. напишите свою реализацию метода equals class Person { private String firstName; private String surName; private String secondName; @Override //напишите свою реализацию } } #alfabank | Подписаться
Альфа банк

//2. написать код чтобы найти чего нехватает, что лишнее и что поменялось
var old = Map.of("Коля", 1, "Петя", 5, "Таня", 4);
var fresh = Map.of("Коля", 3, "Вика", 7, "Таня", 4, "Ваня",9);


#alfabank | Подписаться
IT ONE #repeat


Найти всех сотрудников, у которых общий размер начислений превышает 20
-- Persons со списком работников
-- id | name
-- ------------
-- 1 | Petya
-- 2 | Vasya
-- 3 | Kolya

-- Payments с зарплатными начислениями ежемесячно.
-- id | person_id | amount
-- -----------------------------
-- 1 | 1 | 10
-- 2 | 1 | 20
-- 3 | 3 | 15

#sql
#itone | Прислать задачу | Подписаться
1👍1
Кто ищет работу, сколько у вас было техсобесов за эту неделю?
Anonymous Poll
60%
Посмотреть результат
27%
0
9%
1-2
2%
3-5
1%
6-10
2%
больше 10
1
Реальные задачи с собеседований | Java
Альфа-банк //3. Что напишет программа? var al = Arrays.asList(1, 2, 3, 4, 5); var ll = new LinkedList<>(al); ll.add(6); al.add(6); log.info("al.equals(ll) = {}", al.equals(ll)); #alfabank | Подписаться
Альфа-банк

//4. сколько байт будет вынужден копировать процессор?
public static void main(String[] args) {
Random rand = new Random();
var list = new ArrayList<byte[]>(10);
for (int i = 0; i < 10; i++) {
ByteBuffer buffer = ByteBuffer.allocate(1 << 20);
rand.nextBytes(buffer.array());
list.add(buffer.array());
}
//превышаем capacity, сколько байт будет вынужден копировать процессор
ByteBuffer buffer = ByteBuffer.allocate(1 << 20);
rand.nextBytes(buffer.array());
list.add(buffer.array());
}

#alfabank | Подписаться
👎13🤔5👍2
Реальные задачи с собеседований | Java
Альфа-банк //4. сколько байт будет вынужден копировать процессор? public static void main(String[] args) { Random rand = new Random(); var list = new ArrayList<byte[]>(10); for (int i = 0; i < 10; i++) { ByteBuffer buffer = ByteBuffer.allocate(1…
Альфа-банк
//5. За какое время выполнится программа на машине с 1 cpu без HT?
static void sleepOneSecond() {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}

public static void main(String[] args) {
try(var pool = new ThreadPoolExecutor(
/*core pool size*/ 2,
/*maximum pool size*/ 10,
/*keepAliveTime value and unit*/ 30, TimeUnit.SECONDS,
new ArrayBlockingQueue<>(10))) {
var start = System.currentTimeMillis();
for (int i = 0; i < 10; i++) {
pool.execute(Pool::sleepOneSecond);
//а если вот так?
/*
var t = new Thread(Pool::sleepOneSecond);
t.setDaemon(true);
pool.execute(t);
*/
}
Runtime.getRuntime().addShutdownHook(new Thread(() ->
log.info("Time taken: " + (System.currentTimeMillis() - start))));
}
}

#alfabank | Подписаться
👍1🤔1