Design a Satellite List including a set of
operations for it and implement a class to handle integer data. Include a test
program which uses this class.
We started to discuss the satellite list in class.
Here is an explanation which I hope clears up some of the confusion.
The "satellite list", involves
conceptually having two linked list nodes per item of real data. Each
node has a link to its sibling, and a link to one of
the nodes in the next item along the list. The clever bit is that each node's
next-item link links to whichever of the nodes in the next item doesn't
link back to this item; so you can traverse the list very efficiently in either
direction just by following next-item links. To turn round and go back the way
you came, you simply follow one sibling link, which effectively makes a U-turn.
The data is copied into both sibling nodes or both siblings must point to a
separate data node.
See papers for more details the Osterman/Rego document includes a description of the
traveling saleman problem