Я работаю над заданием, которое говорит мне предположить, что у меня есть связанный список с узлами заголовка и хвоста. Он хочет, чтобы я вставлял элемент y до позиции p. Может кто-нибудь, пожалуйста, просмотрите мой код и скажите, правильно ли я нахожусь на правильном пути? Если нет, можете ли вы предоставить мне какие-либо советы или указатели (каламбур не предназначен)?Вставка узла в связанный список в постоянное время?
tmp = new Node();
tmp.element = p.element;
tmp.next = p.next;
p.element = y;
p.next = tmp;
Я думаю, что может быть неправильно, потому что я не использовать узлы заголовка и хвостовые на всех, даже если они конкретно упоминаются в описании проблемы. Я подумывал написать цикл while, чтобы пройти список до тех пор, пока он не найдет p и не справится с проблемой таким образом, но это не будет постоянным временем, не так ли?
Действительно ли позиция 'p' должна быть индексом или указателем/ссылкой на конкретный узел в списке? – Alnitak 2008-11-16 19:17:09
, что на самом деле смутил меня, проблема очень расплывчата и не уточняет. Он просто говорит «Вставить элемент y перед позицией p» – VeePee 2008-11-16 19:23:01
Предполагая, что p является указателем на узел, вы почти у цели. Иногда в этих вопросах есть дополнительная информация, но в этом конкретном случае есть что-то, что вам нужно сделать с головой и хвостом ... – 2008-11-16 19:47:50