class Solution {
public:
static bool compare(const vector<int> a, const vector<int> b) {
if (a[0] == b[0])
return a[1] < b[1];
return a[0] > b[0];
}
vector<vector<int>> reconstructQueue(vector<vector<int>>& people) {
list<vector<int>> queue;
//将身高从大到小排序
sort(people.begin(), people.end(), compare);
//按照k的个数来插入元素
for (int i = 0; i < people.size(); i++) {
int pos = people[i][1];
list<vector<int>>::iterator it = queue.begin();
while (pos--) {
it++;
}
queue.insert(it, people[i]);
}
return vector<vector<int>>(queue.begin(), queue.end());
}
};
LeetCode406.根据身高重建队列
最新推荐文章于 2024-07-13 13:36:16 发布