Ваши предположения основаны на отсутствии инкапсуляции - то есть, что LinkedHashSet
готов раскрыть свой внутренний LinkedList
внешнему миру, когда я подозреваю, что это не так.
Аналогично объединение двух связанных списков - я не знаю, знает ли каждый узел, в каком списке он находится, но это, безусловно, возможность, которая помешает вашему добавлению в постоянное время. Даже если они этого не делают, как только вы прикрепляете заголовок одного списка к хвосту другого, вы сталкиваетесь с проблемами - у вас есть два списка, оба ссылаются на одни и те же данные, что может иметь некоторые странные последствия.
Другими словами, обе эти операции осуществимы в компьютерном смысле, и вы можете создать свои собственные реализации для их поддержки, но это не означает, что Java API предоставляет свои внутренние возможности способ, который позволяет эти операции.