在很多算法中,会存在需要对一个序列排序,但又想让其索引跟着排序发生变化,这样便引出了对pair进行排序的要求。
很多情况下,会想到定义一个map<int, int>来作为数据结构,然后对第一个first进行排序,然后保持第二个的相对顺序。同样可以转换一个观念,采用vector<pair<int, int>>来作为数据结构,然后采用"algorithm.h"中定义的sort算法进行排序即可。
class Solution{ public: typedef pair<int, int> PAIR; struct