My first choice would be struct and pointers because storing new data and dropping the oldest is just an exercise in using pointers.
My second choice would be an array of structs.
My third choice would be an array of RPM values and an array of speeds.
The array approaches need a loop to move data to get rid of the oldest.
My fourth choice would be a big bunch of variables and would need a big bunch of code to get rid of the oldest. It also would not be easy to change from saving the last four readings to some other number.