Exercises in this lecture   Go to the notes, in which this exercise belongs -- Keyboard shortcut: 'u'   Alphabetic index   Course home   

Exercise solution 9.3
Klasseinvariant i DoubleLinkable


Invarianten for en dobbeltkædet lister er:

For alle indre kædeobjekter k skal der gælde 
   k.isPartOfDoubleLinking();
For et evt. første kædeobjekt k skal der gælde:
   k.isFirstOfDoubleLinking();
For et evt. sidste kædeobjekt k skal der gælde:
   k.isLastOfDoubleLinking();

Metoden isPartOfDoubleLinking(k) udtrykker uformelt at:

  k.next().previous() = k

og

  k.previous().next() = k

De to andre predikater er blot rand- og specialtilfælde af ovenstående.