Seznam propojený s XOR je datová struktura podobná běžnému dvojitě propojenému seznamu , avšak každý prvek ukládá pouze jednu složenou adresu – výsledek XORingu adres předchozího a dalšího prvku seznamu.
Pro pohyb v seznamu je nutné mít adresy dvou po sobě jdoucích prvků.
Provedení operace XOR na adrese prvního prvku a složené adrese uložené ve druhém prvku poskytne adresu prvku následujícího po těchto dvou prvcích.
XORing složené adresy uložené v prvním prvku a adresy druhého prvku poskytne adresu prvku předcházejícího těmto dvěma prvkům.
Klasický dvojitě propojený seznam ukládá odděleně adresy předchozího a následujícího prvku seznamu, které vyžadují uložení dvou ukazatelů:
... A B C D E ... –> next –> next –> next –> <– prev <– prev <– prev <–Režie seznamu propojeného s XOR je poloviční, protože ukládá pouze jednu "adresu" - XOR ukazatele na předchozí a následující prvky:
... A B C D E ... <–> A⊕C <-> B⊕D <-> C⊕E <->Z nedostatků můžeme zmínit složitější implementaci, nemožnost použít standardní garbage collector , potíže s laděním programu [1] .
Používá se poměrně zřídka, protože existují dobré alternativy, jako je například rozšířený seznam odkazů .