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

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

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

Реализовать функцию решения уравнения вида ax^2 + bx + c = 0.
Результат работы вывести в консоль
public void solve (double a, double b, double c)


#wilberries
Прислать задачу | Подписаться
😁39🔥10
IW GROUP

сделать ревью
@RestController("/users")
public class UserController {

@Autowired
private final UserService userService;

@GetMapping("/get-by-id/{id}")
public ResponseEntity<UserEntity> getById(@PathVariable("id") Long id) {
return ResponseEntity.ok(userService.getById(id));
}

@GetMapping("/get-all")
public ResponseEntity<List<UserDto>> getAll() {
return ResponseEntity.ok(userService.getAll());
}

@PostMapping("/create")
public ResponseEntity<Void> create(UserDto userDto) {
userService.create(userDto);
return ResponseEntity.ok().build();
}

@PostMapping("/delete/{id}")
public ResponseEntity<Void> delete(@PathVariable("id") Long id) {
userService.delete(id);
return ResponseEntity.ok().build();
}

@PostMapping("/update/{id}")
public ResponseEntity<Void> update(@PathVariable("id") Long id, UserDto userDto) {
userService.update(id, userDto);
return ResponseEntity.ok().build();
}
}

public interface UserService {

UserEntity getById(Long id);

List<UserDto> getAll();

void create(UserDto userDto);

void delete(Long id);

void update(Long id, UserDto userDto);
}

@Service
@RequiredArgsConstructor
public class UserServiceImpl implements UserService {

UserJpaRepository userJpaRepository;
ArchiveJpaRepository archiveJpaRepository;
UserMapper userMapper;

public UserEntity getById(Long id) {
return userRepository.findById(id).get();
}

public void create(UserDto userDto) {
UserEntity user = userMapper.toEntity(userDto);
UserEntity userEntity = userRepository.save(user);
}

public void delete(Long id) {
UserEntity userEntity = userJpaRepository.findById(id).get();
archiveJpaRepository.save(userEntity);
userRepository.delete(id);
}

public void update(Long id, UserDto userDto) {
UserEntity user = userMapper.toEntity(userDto);
user.setId(id);
userRepository.save(user);
}

public List<UserDto> getAll() {
List<UserEntity> userEntities = userRepository.findAll()
.stream()
.filter(user -> user.getStatus().equals(NEW))
.toList();
userEntities.forEach(user -> user.setActualDate(now()));
return userMapper.toDtos(userEntities);
}
}

public interface UserRepository extends JpaRepository<UserEntity, Long> {

}

@Data
@Table("users")
public class UserEntity {

@Id
Long id;

String name;

@ManyToOne
@JoinColumn(name = "user_id")
Role role;

Status status;

LocalDateTime actualDate;
}

Прислать задачу | Подписаться
👍1
Сбер

Сколько раз отработает и что выведет:
for(int i = 0; i < 10;i++) {
i = 20;
}
System.out.println(i);

#sber
Прислать задачу | Подписаться
😁182👍1
WB🔥
/*
* Дан массив целых чисел. Переместить все нули в конец массива,
* сохранив относительный порядок остальных элементов.
* Изменения должны быть сделаны in-place (без создания копии массива).
*
* Примеры:
* [0, 1, 0, 3, 12] -> [1, 3, 12, 0, 0]
* [0, 0, 1] -> [1, 0, 0]
* [0] -> [0]
* [1] -> [1]
*/
private static int[] zeroToEnd(int[] ints) {
// TODO
}

#wilberries
Прислать задачу | Подписаться
😁7👍4
какой-то банк

import java.util.Collection;
import java.util.Comparator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import lombok.AllArgsConstructor;
import lombok.Data;
class Client {}
@Data
class Item {
private long id;
private String color;
}
/*
* Сервис для поиска заказов клиентов
*/
interface ItemService {
Collection<Item> getClientOrders(Client client);
}
public class StreamTask {
private ItemService itemService;
/*
Возвращает Stream , содержащий count самых популярных цветов товаров, которые заказывали переданные клиенты
@param clients - список клиентов
@param count - максимальное количество записей, которое надо вернуть
@return
*/
public Stream<String> mostPopularColors(Collection<Client> clients, int count) {
return
}

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

#fridaymemes
😁57😢3👍1
какой-то банк просили выложить анонимно
/*
Пример входных данных:

2025-10, кредит, объем, 320.0
2025-10, кредит, чистый доход, 30.0
2025-09, кредит, объем, 170.0
2025-09, кредит, чистый доход, 18
... данные по другим продуктам

Средневзвешенное по кредиту: (320.0 * 30.0 + 170.0 * 18.0) / (30.0 + 18.0)
*/
public class TaskRaroc {

record RawData(YearMonth month, String product, String attribute, BigDecimal value) {}

record CalculationResult(String product, BigDecimal result) {}

/**
* Формула расчета средневзвешенного:
* ∑m(a * b) / ∑mb
* a - attr1
* b - attr2
* m - каждый месяц расчитываемого периода.
* Необходимо вернуть расчитаное значение для каждого продукта.
*/
public List<CalculationResult> calculateWeightedAverage(List<RawData> rawData, String attr1, String attr2) {
// ToDo: implement
return null;
}
}

#unknown
Прислать задачу | Подписаться
x5

что будет выведено?
public class Question1 {

public static void main(String... args) {
final Object obj1 = new Object();
final Object obj2 = new Object();

System.out.println(obj1.equals(obj2));
System.out.println(obj1 == obj2);

final String str1 = new String("string");
final String str2 = new String("string");

System.out.println(str1.equals(str2));
System.out.println(str1 == str2);

final String str3 = "string";
final String str4 = "string";

System.out.println(str3.equals(str4));
System.out.println(str3 == str4);

final Integer i1 = new Integer(1);
final Integer i2 = new Integer(1);

System.out.println(i1.equals(i2));
System.out.println(i1 == i2);

final Integer i3 = 127;
final Integer i4 = 127;

System.out.println(i3.equals(i4));
System.out.println(i3 == i4);
}
}

#x5tech
Прислать задачу | Подписаться
😁9🤷‍♂21
x5 #sql
- Отдел:
CREATE TABLE department (
id INTEGER NOT NULL, -- идентификатор отдела
name VARCHAR(128) NOT NULL, -- название отдела
PRIMARY KEY (id)
);

-- Сотрудник:
CREATE TABLE employee (
id INTEGER NOT NULL, -- идентификатор сотрудника
department_id INTEGER, -- идентификатор отдела
manager_id INTEGER, -- идентификатор начальника
name VARCHAR(128) NOT NULL, -- имя сотрудника
salary DECIMAL NOT NULL, -- оклад сотрудника
PRIMARY KEY (id),
FOREIGN KEY (department_id) REFERENCES department(id),
FOREIGN KEY (manager_id) REFERENCES employee(id)
);

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

#x5tech
Прислать задачу | Подписаться
😁4
VK

public class AtomicsQuestion {
private static int result;
private static AtomicBoolean done = new AtomicBoolean(false);
public static void mail(String[] args) {
Thread thread = new Thread(() -> {
result = 13;
done.set(true);
});
thread.start();
while(!done.get()) {/*do nothing*/}
System.out.println(result);
}
}
Что может распечататься на консоль?
1) гарантированно 0?
2) гарантированно 13?
3) 0 или 13?

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

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

#alfabank
Прислать задачу | Подписаться
🤯6👍4😁1