Most recommendation algorithms recommend new products to users. If you bought this you might like thatBut sometimes the item user is most likely to buy is an item that he bought sometime ago.Is there any algorithm appropriate for this use?
Recommendation model that can recommend already bought item
recommender system
Usually recommendation algorithms provides the confidence that a user will like an item. Items that the user already bought should get high confidence - the user bought them since he liked them.In most cases filtering out item the user already bough is done in the application level, not in the algorithm level. So , you can use regular recommendation algorithms in order to know if the user will like the item.Please note that you might face a different problem - will the user buy the item for the second/third time. In order to cope with this problem, using some domain knowledge might be beneficial. If the products are usually bough many times (e.g., milk), just use the recommendation algorithm. If all the products have the same tendency to be bought few times, build a model for that (e.g., probability for buying another time given already buying x times) and combine the models.If your products are very different from this aspect you might need to get into a lower level. Different domains require different solution but you might split the product by the buying behavior and train few recommendation systems, add the number of buying as a feature, etc. 