Взято из решения задачи Page replacement algorithms: FIFO на codewars.com

import java.util.ArrayList;
import java.util.Collections;

interface Solution {
  static int[] fifo(int n, int[] list) {
    var memory = new ArrayList<>(Collections.nCopies(n, -1));
    int p = 0;
    for (int i : list) {
      if (!memory.contains(i)) {
        memory.set(p++, i);
        p %= n;
      }
    }
    return memory.stream().mapToInt(i -> i).toArray();
  }
}