Есть литкод задача You are given the head of a linked list. Delete the middle node, and return the head of the modified linked list.
The middle node of a linked list of size n is the ⌊n / 2⌋th node from the start using 0-based indexing, where ⌊x⌋ denotes the largest integer less than or equal to x.
For n = 1, 2, 3, 4, and 5, the middle nodes are 0, 1, 1, 2, and 2, respectively.
Решается за один проход двумя указателями, где один движется в 2 раза быстрее. Реализовать это на rust крайне сложно - правила владения не дают заполучить все нужные указатели одновременно.
Сам не осилил, попросил ллм-ки. Все 3 которые попробовал(deepseek, kimi, алиса) - на этом примере ломаются. Выдаваемый код не компилируется. Начинал когда-т читать вот такую забавную книгу - похоже, таки, придется дочитать)
· 20.10.2025
Муахаха. 😊 https://github.com/dipjul/Grokking-the-Coding-Interview-Patterns-for-Coding-Questions?tab=readme-ov-file
Вот тебе бесплатный гитхаб, тебе нужна секция Fast and Slow Pointers, там ещё есть.
Но вообще есть божественный платный курс на educative.io, называется так же, подписка где-то 3 т.р. мес иностранной картой. Там прям всё семейство таких задач с картинками и возрастанием по сложности 🥰
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён