Q:

Best way to prevent repeat results? 

I have a list of quotes and I need to pull random quotes from the list.  I want to create a bias against getting repeat quotes (the quotes can be repeated but I want to bias against a repeat if possible).  Pretty much I just want the user to not feel like the quotes are repeating.  What's the most efficient way to accomplish this? 
My current idea is to pull x amount of quotes from the list initially, preventing repeats.  Then when I have to pull x more quotes then I save the last quote that was used then make sure the next set of quotes doesn't have the last one (so that there isn't a repeat of quotes from the last quote). 

A:

Grab the entire list from the database, then have the serverside language (eg php, .net, etc) shuffle the array.  Then use from row 0 to say row 9.  The next time use rows 10-19

