MoveToFront is a fairly robust local optimization technique used in such things as MoveToFrontLists.