Machine learning algorithm for ranking I am working on a ranking question, recommending k out of m items to the users. The evaluation metric is average precision at K. 

Both R and Python have xgboost can be used for pairwise comparison and can be adapted for ranking problems. 

Are there other algorithms or approaches that can be applied to ranking problems?
Your problem sounds like the classical top-N personal recommendation to me. There're lots of possibilities in the literature, for example:


User-based collaborative filtering
Content-based collaborative filtering
Matrix factorisation


You'll need to read the literature and figure out which one is better for you.