What is the most efficient way to rank the item of a list based on the preference of the user by showing two item at a time?
Assuming that the user will create a total ordering of items, the algorithm should maintain a fully ordered list of an increasing number of items. Take the next unordered item and use the comparisons needed for binary search to insert it in the ordered list.
Take the next unordered item and use binary search comparisons of two items to insert that.
Repeat until all items are ordered.
The binary searches should minimise the comparisons at each stage and present the user with more meaningful comparisons over time for each new item.