nixp.ru v3.0

18 октября 2017,
среда,
19:52:29 MSK

DevOps с компанией «Флант»
Any_Key написал 19 января 2006 года в 17:38 (596 просмотров) Ведет себя как мужчина; открыл 31 тему в форуме, оставил 325 комментариев на сайте.

Мой друг мне загадку загадал.

Есть линейный односвязный список и надо найти N-ый элемент с конца.

Несколько одгадок у меня есть, интересно что у вас.

Uncle Theodore

Метод называется «вагон и маленькая тележка».

Вагон едет, пока не упрется в конец, маленькая тележка отстает от него ровно на N элементов (как только это становится возможно). Как только вагон уперся в конец, в тележке — N-тый элемент с конца.

Подробно: Вагон поехал с начала. Счетчик щелкает. Как нащелкал N — поехала тележка, тоже с начала. На каждом шагу вагон продвигается на один элемент, и тележка на один элемент. Как вагон уперся — считываем содержимое тележки.

Good Luck,

UT

Any_Key

Дядя Фёдор, как всегда на высоте.

Это самый элегантный из известных мне способов.

А других нет?