Search code examples
sequences

Self Organising Sequence Strategies


Can anyone give me any strategies that can be used to make a sequence a self-organising sequence?

Assume the sequence contains integer values.

EDIT: By self-organising I mean arranging elements by search patterns.

e.g.

if we have the sequence: 12, 11, 4, 13, 10

as it it unsorted, we cannot perform binary search. We must perform linear search in order to check if the sequence contains a particular key.

Therefore, by self-organising, I mean somehow rearranging the sequence to make the linear search more efficient.

I can think of two - priority ordering based on searches, and sorting the list and then performing binary search instead of linear search. Anyone got any other ideas?


Solution

  • There are actually three formal strategies I found after some research:

    1) Move To Front: Move searched item to the front of the sequence whenever accessed

    2) Migrate To Front: Move searched item one place up the sequence whenever accessed

    3) Frequency Tables: Order items based on frequency of accesses/searches