Self-organising heuristic


In computing, a Self-organising heuristic is an algorithm that modifies a data structure such as a linked list in response to use of the data structure.
Examples might be:
Move to front, or Order by access frequency, might be used to organize a cache of information, so that frequently used, or recently used information is at the top.
Order by frequency might be used to re-arrange a list of options in a GUI menu, so that the top ones are the ones most commonly selected by the user.
Re-insert at random or Move to back might be used to organise a list of mirror servers, so that once a server has been used for downloading, it goes to the back of the queue, to discourage the user from selecting it again.