Si potrebbe pensare il codice sempliceCome si aggiunge una LinkedList <T> a una LinkedList <T> in C#?
llist1.Last.Next = llist2.First;
llist2.First.Previous = llist1.Last;
avrebbe funzionato, ma a quanto pare in C 's # LinkedList, Primo, Ultimo, e le loro proprietà sono ottenere solo.
L'altro metodo che riuscivo a pensare era
llist1.AddLast(llist2.First);
Tuttavia, questo non funziona neanche - non riesce perché il primo nodo di llist2 è già in una lista collegata.
Ciò significa che devo avere un ciclo che aggiunge manualmente ciascun nodo di llist2 a llist1? Questo non sconfigge l'efficienza delle liste collegate ????
-1 sembra che l'intellisense possa aver risposto alla tua domanda –
Anche l'aggiunta di elenchi concatenati non è un compito molto comune; se ricordo i miei corsi di strutture dati da indietro nel corso della giornata. Le liste e le liste collegate non sono la stessa cosa. Hanno scopi diversi; quindi, il comportamento (o la sua mancanza) ha senso. –
llist1.AddLast (llist2.First) non funziona perché llist1/llist2 sono elenchi con collegamento doppio. Se ciò fosse consentito, quale nodo "precedente" verrebbe indirizzato dal nodo assegnato ad AddLast? Non può essere un membro di due liste per questa stessa ragione. –