Я просмотрел большинство тем здесь о списках с двойной связью, но до сих пор неясно, что будет дальше.
Я практикую книгу Гудрича и Тамассии на Java.Что касается двусвязных списков, пожалуйста, исправьте меня, если я ошибаюсь, он отличается от односвязного списка тем, что узел может быть вставлен в любом месте, а не только после заголовка или после хвоста, используя как следующий, так и предыдущий доступные узлы, аодносвязные списки, эта вставка в любом месте списка невозможна?
Если кто-то хочет вставить узел в двусвязный список, то аргумент по умолчанию должен быть либо узлом после вставляемого узла, либоузел перед подлежащим вставке узлом?Но если это так, то я не понимаю, как пройти узел до или после.Должны ли мы отображать все узлы, которые были вставлены до сих пор, и попросить пользователя выбрать узел до или после которого нужно вставить какой-то новый узел?Я сомневаюсь, как пройти этот узел по умолчанию.Поскольку я предполагаю, что для этого потребуются также следующий и предыдущий узлы этих узлов.
Например, Head<->A<->B<->C<->D<->E<->tail
Если Z - это новый узел, который нужно вставить после, скажем, D, то какдолжен ли проходить узел D?Меня это смущает, хотя большинству это кажется довольно простым.
Но пожалуйста, объясните.
Спасибо, Санджай