Any indexed data structure can be used to store the elements. Unlike the LRU, the MRU does not need to hold the history. Keep an MRU variable with an index of the last used cache entry. Update it on hit and on replacement. Pick the MRU element when need to replace an element.