Реальные задачи с собеседований | Java
Kanalga Telegram’da o‘tish
Буду сюда выкладывать реальные задачи и вопросы с собеседований, без копипаста с интернета и других каналов) Ссылка для друга - https://t.me/+K4vJFdalwlthYTQy Прислать задачи, реклама - @privatevoidmain
Ko'proq ko'rsatish4 361
Obunachilar
+124 soatlar
+117 kunlar
+1830 kunlar
Postlar arxiv
Сосчитайте, сколько раз каждое слово встречается в тексте, используя Java Stream API
Необходимо преобразовать List<String> в Map<String, Long>, учитывая, что слова в предложениях могут быть разделены несколькими пробелами или табуляциями, а буквы в словах иметь разный регистр.
Пример списка:
var list = List.of(
" Эта модель помогает нейросети запоминать правила языка",
"выбирать подходящие слова и связывать их по смыслу",
" Также эта нейросеть помогает превращать введённый текст "
);У вас есть односвязный список, представленный экземплярами класса Node. Список имеет произвольное (и довольно большое) количество элементов. Каждый узел указывает на следующий, последний узел указывает на null.
class Node {
Node next;
}
Задача:
Напишите алгоритм на Java, который инвертирует этот связный список.
Нельзя использовать коллекции, массивы и любые встроенные средства языка для работы с коллекциями и библиотеками.
Код должен уместиться в 10 строк.Необходимо реализовать на Java метод, принимающий на вход коллекцию строк и выбрасывающий из переданной коллекции все элементы, начинающиеся на «aaa».
Сигнатура необходимого метода должна иметь вид:
public static void filterTripleA(Collection strings);Дан следующий Java-класс.
Необходимо реализовать стандартный метод, осуществляющий сравнение 2-х объектов Person.
Задача на SQL
Вывести департаменты, в которых сотрудников менее 3-х
Сделать код-ревью
@Service
public class UsefullService {
@Autowired
private UserRepository userRepository;
@Autowired
private CommentRepository commentRepository;
private Map<Long, List<Comment>> cache = new HashMap<>();
public Comment addComment(User user, String text) {
user.setLastActivity(ZonedDateTime.now());
userRepository.save(user);
Comment comment =
Comment.builder()
.user(user)
.text(text)
.build();
comment = commentRepository.save(comment);
if (!cache.contains(user.getId())) {
cache.put(user.getId(), commentRepository.findAllByUser(user));
}
cache.get(user.getId()).add(comment);
return comment;
}
public List<Comment> getComments(User user) {
if (!cache.contains(user.getId())) {
cache.put(user.getId(), commentRepository.findAllByUser(user));
}
return cache.get(user.getId());
}
}Что будет выведено в консоль?
public class Test {
Integer a;
int getA() {
return a;
}
public static void main(String[] args) {
Test obj = new Test();
System.out.println(obj.getA());
}
}Довольно частая задача на знание пула интов
Integer i1 = 128;
Integer i2 = 128;
System.out.println(i1 == i2);
Integer i3 = 127;
Integer i4 = 127;
System.out.println(i3 == i4);
}Вторая задача. Что зедсь не так?
@Service
@RequiredArgsConstructor
public class SaveStarter {
private final MqSender sender;
private final ContractRepository contractRepository;
@Transactional
public SaveResponse start(BigDecimal price) {
var contract = new ContractEntity();
contract.setPrice(price);
contract.setCreatedDate(LocalDateTime.now());
contract = contractRepository.save(contract);
var msg = new SaveMessage();
msg.setContractId(contract.getId());
sender.send(msg);
return new SaveResponse(contract.getId());
}
}
@Service
@RequiredArgsConstructor
public class SaveListener {
private final MqListener listener;
private final ContractRepository contractRepository;
private final SaveService saveService;
@RabbitListener(queues = "SAVE_QUEUE")
public void finalize(SaveMessage message) {
var contract = new ContractEntity();
ContractEntity contract = contractRepository.findById(message.getContractId()).orElseThrow();
saveService.save(contract);
}
}Сделать рефакторинг (задача из одного красного банка)
@RestController
@RequestMapping(path = "/contract")
public class ContractController {
private final ContractRepository repository;
private final ContractService contractService;
public ContractController(ContractRepository repository, ContractService contractService) {
this.repository = repository;
this.contractService = contractService;
}
@PostMapping(path = "/{contractId}/price")
public void updatePrice(@PathVariable Long contractId) {
Contract contract = repository.findById(contractId).orElseThrow();
contractService.setContract(contract);
contractService.updatePrice();
}
}
@Service
public class ContractService {
private final PriceService priceService;
private Contract contract;
public ContractService(PriceService priceService) {
this.priceService = priceService;
}
public void setContract(Contract contract) {
this.contract = contract;
}
public void updatePrice() {
if (contract != null) {
BigDecimal price = priceService.calcPrice(contract);
contract.setPrice(price);
}
}
}
class Contract {
private BigDecimal price;
public BigDecimal getPrice() {
return this.price;
}
public void setPrice(BigDecimal price) {
this.price = price;
}
}
Ответ в комментариях-Что будет выведено на экран?
Stream.of("1", "2", "3")
.map(s -> s + ",")
.peek(System.out::print)
.filter(s -> false)
.findAny();Дан массив string, найти первый не повторяющийся символ и вернуть его индекс. Если таких символов нет, вернуть -1 Примеры: Input: s = "leetcode" Output: 0 Input: s = "loveleetcode" Output: 2 Input: s = "aabb" Output: -1
Простенькая, но довольная частая задача на работу со стрингом
Убрать повторения из стринга
String s = "Ззззздраааавввстттвввууууй!!";
Самому писать было лень, попросил ответить chat-gpt (4o). Но как обычно он написал дичь - его код не прошел проверку в intellij. Пришлось писать самому. Ответ в комментарияхВторая задача из этого же собеседования.
Что будет выведено? (Ответ в комментариях)
Задача из собеседования в одну аутстафф компанию.
//Есть 2 интерфейса:
public interface Interface1 {
default Long calcMethod(Long id){
return id;
}
}
public interface Interface2 {
default Long calcMethod(Long id){
return id;
}
}
//Есть реализация:
public class Extend2Interfaces implements Interface1, Interface2 {
}
//Метод какого интерфейса будет вызван?
Ответ в комментариях-
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
