假設有打亂順序的一群人站成乙個佇列。 每個人由乙個整數對(h, k)表示,其中h是這個人的身高,k是排在這個人前面且身高大於或等於h的人數。 編寫乙個演算法來重建這個佇列。
注意:總人數少於1100人。
示例輸入:
[[7,0], [4,4], [7,1], [5,0], [6,1], [5,2]]
輸出:[[5,0], [7,0], [5,2], [6,1], [4,4], [7,1]]
思想就是:先對原有序列按照身高進行排序,之後將後面的index插入;
class
solution
return a[1]
;}vectorint>>
reconstructqueue
(vectorint>>
& people)
std::
sort
(people.
begin()
,people.
end(
),compare)
;for
(auto person:people)
return res;}}
;
406 根據身高重建佇列
假設有打亂順序的一群人站成乙個佇列。每個人由乙個整數對 h,k 表示,其中h是這個人的身高,k是排在這個人前面且身高大於或等於h的人數。編寫乙個演算法來重建這個佇列。注意 總人數少於1100人。示例輸入 7,0 4,4 7,1 5,0 6,1 5,2 輸出 5,0 7,0 5,2 6,1 4,4 7...
406 根據身高重建佇列
假設有打亂順序的一群人站成乙個佇列。每個人由乙個整數對 h,k 表示,其中h是這個人的身高,k是排在這個人前面且身高大於或等於h的人數。編寫乙個演算法來重建這個佇列。注意 總人數少於1100人。示例輸入 7,0 4,4 7,1 5,0 6,1 5,2 輸出 5,0 7,0 5,2 6,1 4,4 7...
406 根據身高重建佇列
假設有打亂順序的一群人站成乙個佇列,陣列people表示佇列中一些人的屬性 不一定按順序 每個people i hi,ki 表示第i個人的身高為hi,前面正好有ki個身高大於或等於hi的人。請你重新構造並返回輸入陣列people所表示的佇列。返回的佇列應該格式化為陣列queue,其中queue j ...